Цитата:
|
melky, спасибо) Кажется, понял, где я заплутал
for(var i in this) //не перечислимые св-ва |
nerv_,
Тю, а это тут причём?) |
Nekromancer, я высказывал предположение, что было создано безымянное св-во ^_^
// вызов анонимной функции в контексте объекта
// call(1) -> call(Number) -> call(Object);
(function() {
// проверить тип объекта
alert(this instanceof Number); // True
alert(this == 1); // значение св-ва
for(var x in this) ; // неперечислимое св-во
// вернуть св-во объекта вызова по имени объекта вызова
// т.к. было создано безымянное св-во, то undefined <--
return this[this];
}).call(1);
|
nerv_,
А как это строка может доказать, что мы свойство которое мы хотим запросить равно - undefined? Я конечно предполагаю, что вы путаетесь в терминологии и называете значения свойства (1)[q], просто своством. Но всё же. Строка: for(var x in this) ; лишь может доказать при правильном оформлении, что в нём нет перечисляемых свойств или есть. А этот комментарий меня вообще убил: // т.к. было создано безымянное св-во, то undefined <-- Кто то понял логику? |
Цитата:
// создание объекта x и присвоение ему 2-х св-в
// первое: a со значением 1
// второе: b со значением undefined
var x = { a:1, b:undefined };
// перечислить св-ва объекта
for(var i in x) {
alert(i); // св-во
alert(x[i]); //значение св-ва
}
Цитата:
// т.к. было создано безымянное св-во, то undefined <-- Да, сглупил) Это я цитировал себя от вчера) |
Цитата:
|
nerv_,
Ну сейчас цикр правильный, да :) Просто в том примере это не так проверка, которая нужна была. Livanderiaamarum, Неужели трудно нормально формировать свои мысли? - Если свойство явно не определено или оно не было определено в цепочки прототипов, то возвращается базовое значение - undefined |
Цитата:
|
| Часовой пояс GMT +3, время: 21:30. |