Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 29.10.2009, 14:35
гвоздик
 
Сообщений: n/a

как проверить наличие элементов в объекте?
Как проверить наиболее просто и быстро, что в объекте хоть что-то есть? Неважно, что... length же не работает :-(

сейчас делаю так
var cnt = 0
for(var any in Obj) cnt++
if(cnt>0) continue


помогите
Ответить с цитированием
  #2 (permalink)  
Старый 29.10.2009, 14:39
Новичок на форуме
Отправить личное сообщение для Kolyaj Посмотреть профиль Найти все сообщения от Kolyaj
 
Регистрация: 19.02.2008
Сообщений: 9,177

Так и проверять, только можно получше
function emptyObject(obj) {
    for (var i in obj) {
        return false;
    }
    return true;
}
Ответить с цитированием
  #3 (permalink)  
Старый 29.10.2009, 15:00
гвоздик
 
Сообщений: n/a

Ну это то же самое, просто функцией.
Я надеялся что ещё проще можно. ;-)
Спасибо.
Ответить с цитированием
  #4 (permalink)  
Старый 29.10.2009, 15:11
Новичок на форуме
Отправить личное сообщение для Kolyaj Посмотреть профиль Найти все сообщения от Kolyaj
 
Регистрация: 19.02.2008
Сообщений: 9,177

Не совсем то же, если в объекте 1000 свойств, они все прогоняться не будут.
Ответить с цитированием
  #5 (permalink)  
Старый 30.10.2009, 10:33
Профессор
Отправить личное сообщение для Dmitry A. Soshnikov Посмотреть профиль Найти все сообщения от Dmitry A. Soshnikov
 
Регистрация: 25.02.2008
Сообщений: 707

Сообщение от гвоздик
for(var any in Obj)
Если нужно именно в самом объекте, то надо добавить проверку:

for(var any in Obj) if Obj.hasOwnProperty(any) {...}


иначе "пустой" объект может быть непустым, если что-то есть в прототипе.

Если кроссбраузерность неважна (а вдруг), то у Gecko есть свойство __count__:

({a: 10, b: 20}).__count__ // 2
__________________
Тонкости ECMAScript
Ответить с цитированием
Ответ


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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как проверить что сервер безошибочно выполнил запрос php? PAMAC Серверные языки и технологии 7 20.02.2010 08:10
Как снять фокус со всех элементов? Logo Общие вопросы Javascript 7 02.07.2009 22:53
Как проверить ссылку на работоспособнось? Oleg_777 Общие вопросы Javascript 23 19.03.2009 17:57
Как проверить существование функции Aderba Общие вопросы Javascript 2 14.11.2008 15:09
как проверить поддеружет браузер определенное событие? GOll Элементы интерфейса 9 24.07.2008 13:40