Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Работа с массивом (https://javascript.ru/forum/misc/25392-rabota-s-massivom.html)

strengerst 04.02.2012 02:28

Цитата:

открой хром, нажми f12 выбери там консоль и поиграйся. например если ввести там имя обьекта , то можно посмотреть все его свойства
Да я знаю что length это свойство массива которое определяет длину массива, мне просто интересно если оно в ИЕ прописываясь автоматически какому равно значению.

Раед 04.02.2012 02:30

strengerst,
начните с http://learn.javascript.ru/

Раед 04.02.2012 02:31

Цитата:

Сообщение от strengerst
если оно в ИЕ прописываясь автоматически какому равно значению.

помоему такому же, как и в нормальных браузерах

strengerst 04.02.2012 02:34

и какому? согласно кода
var massive= new Array();
massive[1]="слово1";
massive[3]="слово2";
massive[5]="слово3";

for(var k in massive ) {
    if ( ~~k == k ) {
        alert( massive[ k ] );
    }
}
если вывести
Цитата:

massive[length]
чему будет равно в ИЕ не как 6.

strengerst 04.02.2012 02:48

+i == i вот запутался i это ключ массива q в цикле for, а зачем +i == i
объясни не понятливому мне.

strengerst 04.02.2012 02:52

не просто не пойму зачем нужен + перд i

strengerst 04.02.2012 03:01

все понял пока i равен самому себе выполняеться length ++,
как только i ,будет равняться length свойству родительскому, то условие if не сработает. или не прав

Octane 04.02.2012 03:32

Object.keys(q).length
;)

Octane 04.02.2012 05:07

Не понял причем тут length, это свойство выставлено, как enumerable=false, configurable=false
alert(JSON.stringify(Object.getOwnPropertyDescriptor([], "length")))
поэтому в for-in оно не появится никогда, и Object.keys такое свойство пропустит.

Вообще я просто хотел обратить внимание на то, что давно уже не надо городить for-in-hasOwbProperty, а пользоваться Object.keys, который всеми браузерами поддерживается http://kangax.github.com/es5-compat-table/ Для старых браузеров достаточно скопировать код с MDN https://developer.mozilla.org/en/Jav...s#Compatiblity

devote 04.02.2012 05:54

Цитата:

Сообщение от Maxmaxmaximus
я тож так думал, что у него флаг скрытости стоит, но вот devote считает по другому, за что и минусанул мне в карму. А... нет, он минусанул мне за нерабочие примеры, хотя сам сделал нерабочий пример. Точно точно...

Читай посты внимательнее, в ИЕ 7 свойство length является перечисляемым... Так же подобные примеры предотвращают подсчет назначенных прототипов, тоесть считаем то что имеет числовой индекс. Все просто и не надо городить черт знает что. И хорош ныть... не ныть надо а проверять и читать.

Цитата:

Сообщение от Maxmaxmaximus
Object.keys

в осле не поможет.


Я даю примеры решений, которые работают во всех браузерах без исключения, и не пытаюсь дать человеку то после чего он прибежит снова на форум с воплями "а какого йуха не работает в ИЕ"


Часовой пояс GMT +3, время: 19:32.