JQuery создать массив с проблемой для - PullRequest
0 голосов
/ 25 сентября 2011

Здравствуйте, у меня возникла проблема со следующим кодом:

function loadOptions(num){
listTabs = new Array();
for(var i = 1 ; i < parseInt(num) + 1 ; i++){
    var tabActu = {
        'name':'tab'+i,
        'src':'urlImatge'
        };
    listTabs.add(tabActu);
    $.each(listTabs,function(key,value){
        alert(key+" : "+value);
    });
}

}

Мне нужно создать список элементов, равный параметру num.Я не могу найти ошибку.

Ответы [ 2 ]

2 голосов
/ 25 сентября 2011

Вы искали в консоли ошибок ошибки javascript?

Массивы Javascript не имеют метода .add(). Вы можете использовать .push().

function loadOptions(num){
    listTabs = new Array();
    var len = parseInt(num, 10);
    for (var i = 1 ; i < len + 1 ; i++) {
        var tabActu = {
            'name':'tab' + i,
            'src':'urlImatge'
            };
        listTabs.push(tabActu);
        $.each(listTabs,function(key,value){
            alert(key+" : "+value);
        });
    }
}

В дополнение к изменению на .push(), parseInt всегда должен передаваться значение радиуса, и вы должны удалить вызов функции parseInt из цикла, чтобы он не вызывался на каждой итерации. Кроме того, вы не удалили listTabs здесь, чтобы сделать его глобальной переменной. Это то, что вы намеревались?

1 голос
/ 25 сентября 2011

Sup Francesc

У массивов нет метода добавления ..... используйте push

...