Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   различить нодколлекцию от объекта (https://javascript.ru/forum/misc/21335-razlichit-nodkollekciyu-ot-obekta.html)

DjDiablo 05.09.2011 20:21

Как вариант.

Есть оператор IN который определяет существует ли свойство у объекта.
Возвращает истину или ложь.

Допустим у твоих коллекций есть уникальное свойство, которого нет у обьектов.
if ("unicumProperty" in testObj) {
   alert ("'это коллекция потому что у ней есть свойство unicumProperty которого нет у обьектов"); 
}


параноидальный вариант того-же самого. )))))))
//unicumProperty- должно содержать "hello i NodeCollection";

if ("unicumProperty" in testObj) {
    if (testObj.unicumProperty === "hello i NodeCollection"){
              alert ("'это коллекция потому что у ней есть свойство unicumProperty которого нет у обьектов + верное значение");
    }
}

float 05.09.2011 20:26

Цитата:

В IE<9 можно так:
нда, кто бы подумал... туСтринг возвращает [object Object], а экземпляром Object-а не является...
сенкс.
А вот это вот:
Object(obj) === obj

вроде как лишнее?

float 05.09.2011 20:27

Цитата:

Допустим у твоих коллекций есть уникальное свойство, которого нет у обьектов.
Ты мне очень помог брат :D. У коллекций кроме length больше никаких, нету или я хз какие.

DjDiablo 05.09.2011 20:50

))))
Ну добавь чтоб были. :)

Octane 05.09.2011 22:09

Цитата:

Сообщение от float
Object(obj) === obj

Ну это null отсекает, так как typeof null → "object"


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