Delete item from array , why for and for in output are different?
===

    var arr = ["a", "b", "c",null,undefined];
    
    delete arr[0];
    
    for (var i = 0,j=arr.length; i < j; i++) {
        console.log(arr[i]);
        /*
        undefined
        b
        c
        null
        undefined
        */
    }
    
    for (var o in arr) {
        console.log(arr[o]);
        /*
        b
        c
        null
        undefined
        */
    }

who can tell me why the output is different?