знаете ,что меня смутило в первую очередь ? вот,что . . .
3.6.5. Оператор for…in
Оператор for…in выполняет заданные действия для каждого свойства объекта или для каждого элемента массива. Он имеет вид:
for (переменная in выражение) оператор
Здесь переменная — это декларация переменной, выражение — любое выражение, значением которого является объект или массив, оператор — любая группа операторов JavaScript; если эти группа содержит более одного оператора, то она должны быть заключена в фигурные скобки {}.
Оператор for…in выполняется следующим образом:
Переменной присваивается имя очередного свойства объекта или очередного элемента массива (это зависит от того, является значением выражения объект или массив).
Выполняется оператор.
Управление передается этапу 1.
При итерации массива переменной последовательно присваиваются значение первого, второго, ..., последнего элемента массива. Однако, при итерации свойств объекта невозможно предсказать, в каком порядке они будут присваиваться переменной: этот оператор гарантирует только то, что все они будут просмотрены.
Следующий сценарий создает новый объект ob, а затем последовательно выводит все его свойства на экран обозревателя:
var ob = {"а" : "Архангельск", "б" : "Баку", "в" : "Воронеж"};
for (var key in ob)
document.write(key + ": " + ob[key] + "<BR>");
На экране появится текст
а: Архангельск
б: Баку
в: Воронеж
а именно - я прозевал вот что
"Однако, при итерации свойств объекта невозможно предсказать, в каком порядке они будут присваиваться переменной: этот оператор гарантирует только то, что все они будут просмотрены."
обьясните - for...in это эквивалент foreach ?я понял ,что нет ибо не смог вывести им все 3 элемента даже после того ,как прописал все именно так ,как указано в примере - он вывел мне тоько первый. . .
|