for..in обращение к свойствам
доброго дня, уважаемые знатоки.
подскажите пожалуйста, в чем разница при использовании цикла for..in в обращении к свойствам в примере на странице http://javascript.ru/for..in указано два варианта обращения к свойствам объекта: p и a[p]
var a = {
p1: 1,
p2: 2
}
for(var p in a) {
alert(p) // p1, затем p2
// к значению каждого свойства прибавить 1
a[p] = a[p] + 1
}
|
for(var p in a) - Что по твоему делает эта строчка ?
т.е. нужно что бы ты очень подробно разобрал и поняль т.е. какие переменные где и для чего создаются что в них хранится ... и.т.д «указано два варианта обращения к свойствам объекта: p и a[p] » это мнение неправильное |
Потому что там как обычно, понапишут, литераторы-итераторы
for (property in object) Никакая это не проперть, это key. То есть сначала задурили моск, потом начали объяснять как правильно. Сразу правильно написать нация не позволяет. :) |
Ну вот же, православно
for (variable in object) {... } https://developer.mozilla.org/en-US/...ments/for...in Бяда-бяда у нас с русским, скоро на нем и писать нечего будет. |
И вообще for... in это частный случай, общий случай - in
if(key in object) console.log(object[key]); Квадратные скобки нужны когда идентификатор (key - ключ которым открывается квартира где деньги лежат) заранее неизвестен, или имеет не благообразный вид. Нельзя напечатать object.key потому что key будет считаться скаляром - текстом object['key'], в то время как key - переменная в которой например 'Квартира №25' о которой еще ничего не известно. Поэтому object[key] после вычисления значения ключа теоретически может выглядеть так object.Квартира №25. Но так не бывает снаружи, а что там внутри в дереве творится - нас не колебет. |
| Часовой пояс GMT +3, время: 15:49. |