массив javascript. сортировка с неопределенными значениями

Как Array.prototype.sort обрабатывает неопределенные значения в массиве?

var array = [1,undefined,2,undefined,3,undefined,4];
var array2 = [];
array2[0] = 1;array2[2] = 2;array2[4] = 3;array2[6] = 4;

При вызове array.sort (function (l, r) {...} ); Значения undefined никогда не передаются как l или r .

Могу ли я гарантировать, что все неопределенные значения всегда будут идти в конец массива для всех браузеров?

Будет ли следующий цикл обрабатывать все не undefined данные в массиве

array.sort();
for (var i = 0; array[i] !== undefined; i++) {
    // handle array
}

Вы может предположить, что никто не объявил undefined как переменную.

12
задан Raynos 24 January 2011 в 14:37
поделиться