2013-08-01 3 views
1

Я пытаюсь научиться jQuery.map() и что-то я неправильно

Почему ...

var arr = [0]; 
arr = $.map(arr, function(a,i) { 
    return [a,i]; 
}); 

Возвращение [0, 0] , почему не [[0,0]]

но обычно

var arr = [0]; 
arr = [arr,0]; 

возвращение [[0], 0]

http://jsbin.com/uhixex/1/edit

Кажется глупым qustion, но expain мне пожалуйста

ответ

4

Документация для обратного вызова в JQuery 1.6+ говорит:

Возвращаемый массив будет растянут в результирующем массиве

Что в основном означает, что если ваша карта приводит к вложенному ar ray, вложенность будет отброшена и будет возвращен одномерный массив.

Смежные вопросы