Вот некоторые странные javascript поведение функции map
в Firefox.Странное поведение javascript `map` в Firefox
Во время состояния ошибки веб-приложения (когда поджигатель останавливается на ошибке) введя в Firebug консоли:
["a", "b", "c", "d"].map(function(val, i, arr) {
return val + " " + i + " " + typeof arr;
});
производит следующий не-ожидаемый результат:
["a undefined undefined",
"b undefined undefined",
"c undefined undefined",
"d undefined undefined"]
В это время, если я открою еще одну пустую вкладку и нахожу один и тот же оператор в Firebug Console пустой вкладки, он производит следующий ожидаемый результат:
["a 0 object",
"b 1 object",
"c 2 object",
"d 3 object"]
Это означает, что в условии ошибки map
вызывает обратный вызов с 1 аргументом вместо ожидаемых 3 аргументов.
Цитата MDN: (https://developer.mozilla.org/en/JavaScript/Reference/Global_Objects/Array/map)
обратного вызова вызывается с тремя аргументами: значение элемента, индекс элемента, а объект массив пересекаемой.
Является ли неожиданное поведение из-за того, что приложение форсирует firefox в каком-то режиме?
(я использую Firefox 12.0)
http://jsfiddle.net/6WRqp/ --- FF12, невозможно воспроизвести – zerkms