За последние 24 часа нас посетили 40753 программиста и 1725 роботов. Сейчас ищут 623 программиста ...

Javascript array

Тема в разделе "Прочие вопросы по PHP", создана пользователем alexey_baranov, 1 дек 2010.

  1. alexey_baranov

    alexey_baranov Активный пользователь

    С нами с:
    3 фев 2009
    Сообщения:
    647
    Симпатии:
    0
    Адрес:
    Сургут
    [js]var arr=[0,1,2]
    delete arr[1]

    alert(arr.length) //выводит 3

    for(eachIndex in arr)
    alert(eachIndex) //выводит 0 потом 2. А где же третий?
    [/js]

    вопрос такой: почему показывает количество элементов 3, а выводит всего 2? Я бы понял любой из этих вариантов, но только не тот который получил
    1. если бы сначала вывелось 2 потом 0 и 2
    2. если бы сначала вывелось 3 потом 0, undefined и 2
     
  2. <?=RPG?>

    <?=RPG?> Активный пользователь

    С нами с:
    19 ноя 2010
    Сообщения:
    451
    Симпатии:
    0
    eachIndex пропускает undef, сам элемент присутствует в массиве:
    var arr=[0,1,2];
    delete arr[0];
    arr;
    [undefined, 1, 2]
     
  3. Gromo

    Gromo Активный пользователь

    С нами с:
    24 май 2010
    Сообщения:
    2.786
    Симпатии:
    2
    Адрес:
    Ташкент
  4. alexey_baranov

    alexey_baranov Активный пользователь

    С нами с:
    3 фев 2009
    Сообщения:
    647
    Симпатии:
    0
    Адрес:
    Сургут
    точно!