Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 13.03.2009, 11:22
Аватар для Shasoft
Профессор
Отправить личное сообщение для Shasoft Посмотреть профиль Найти все сообщения от Shasoft
 
Регистрация: 03.03.2009
Сообщений: 156

Object и очередность доступа к свойствам
Что-то никак не могу найти следующую информацию.

К примеру есть такой код:

var obj = new Object();
obj[red] = 255;
obj[green] = 128;
obj[blue] = 200;
for(var prop in obj)
 alert(prop);


Можно на 100% утверждать, что свойства выведутся в том порядке, в котором их создавали? Т.е. как red, gree, blue и никогда в другом.

Что об этом спецификация говорит? Или может для разных браузеров реализация различается?
Ответить с цитированием
  #2 (permalink)  
Старый 13.03.2009, 11:27
Новичок на форуме
Отправить личное сообщение для Kolyaj Посмотреть профиль Найти все сообщения от Kolyaj
 
Регистрация: 19.02.2008
Сообщений: 9,177

Сообщение от Shasoft
Можно на 100% утверждать, что свойства выведутся в том порядке, в котором их создавали?
Нет, нельзя. Зачастую они идут в том же порядке, но это можно считать случайностью, совпадением, особенностью реализации, чем-то еще, но никак не правилом. Сама суть хеша отрицает упорядоченность, для порядка массивы есть.
Ответить с цитированием
  #3 (permalink)  
Старый 13.03.2009, 11:28
...
Отправить личное сообщение для Zeroglif Посмотреть профиль Найти все сообщения от Zeroglif
 
Регистрация: 09.03.2008
Сообщений: 216

Цитата:
The mechanics of enumerating the properties is implementation dependent. The order of enumeration is defined by the object.
Реализация в разных браузерах отличается, очерёдность не гарантирована.
Ответить с цитированием
  #4 (permalink)  
Старый 13.03.2009, 11:42
Аватар для Shasoft
Профессор
Отправить личное сообщение для Shasoft Посмотреть профиль Найти все сообщения от Shasoft
 
Регистрация: 03.03.2009
Сообщений: 156

Kolyaj,
Вот именно название "хэш" и вызывало подозрение, что очередность не гарантирована. Но решил уточнить на форуме этот момент, а то в случае гарантирования очередности можно было это использовать.
Zeroglif,
Хм, а я то всё на русском искал. Не подумал о буржуйской документации.

Всем спасибо за ответы.
Ответить с цитированием
Ответ


Опции темы Искать в теме
Искать в теме:

Расширенный поиск