2016-03-10 7 views
0

Мне нужно оценить, является ли объект empy. Например, предположим, что у вас есть объект:Как проверить, является ли объект empy [javascript]

var home=....;//this is a object and after I print it 
console.log(home)// the result of this option is [] 
//now I need to check if a object is empy or null 
if(home==null || home==undefined){//I don't know specify how object is empty 

} 

Кто-нибудь может мне помочь?

+0

'!! home.length' ?? –

+0

Ваш пример - массив, а не объект fwiw. – Andy

+0

@ Andy Array - это объект. :) –

ответ

1

Чтобы проверить пустой массив

if (!arr.length) { 
    // if the array is empty 
} 

и для объекта (убедитесь, что он не имеет ключей)

if (!Object.keys(obj).length) { 
    // if the object is empty 
} 

DEMO

+0

Я использую все два метода, и у меня есть одна и та же ошибка, но вектор, который я использую это результат от вар ветеринара = $ (это) .find ('...') отображение (функция() { \t \t \t \t \t возвращение { \t \t \t \t \t \t 'имя':. this.id, \t \t \t \t \t \t 'значение': this.value \t \t \t \t \t}; \t \t \t \t}). Get(); – user6045391

+0

, когда поля являются значением, проблема не существует, но когда я оставляю поля пустыми, у меня есть эта проблема! – user6045391

+0

С риском повторения себя добавьте соответствующий код/​​HTML к вашему вопросу. Теперь вы спрашиваете о jQuery, который не упоминается в вашем вопросе. Если вы не предоставите нам всю информацию, как мы можем вам помочь? – Andy

0

Только так я вижу до сих пор может быть ({}).toSource() === o.toSource()

Пример:

var y = {a: 't'}; 
window.console.log(({}).toSource() === y.toSource()); 
delete y.a; 
window.console.log(({}).toSource() === y.toSource()); 

EDIT: О, красиво, Энди.

Смежные вопросы