Javascript: obyektdə bir obyektin olub olmadığını yoxlamaq və ya bir xəritə / assosiasiya array yox

Mümkün dublikat:
JSON-dan boş Javascript obyektini necə yoxlamaq olar?

Javascript xüsusiyyətlərində bir obyektin yoxluğunu yoxlamaq üçün asan bir yol varmı? Yəni, xəritə / assosiasiya array boş olub-olmadığını yoxlamaq üçün sadə bir yol? Məsələn, aşağıdakıları söyləyək:

 var nothingHere = {}; var somethingHere = {foo: "bar"}; 

Kimin "boş" olduğunu müəyyən etmək üçün asan bir yol varmı? Düşündüyüm tək şey belə bir şeydir:

 function isEmpty(map) { var empty = true; for(var key in map) { empty = false; break; } return empty; } 

Daha yaxşı bir yol var mı (məsələn, öz əmlakınız və ya funksiyası)?

26
06 авг. Vivin Paliath tərəfindən 06 avqust . 2010-08-06 22:14 '10 10:14 pm 2010-08-06 22:14
ответ 1 cavab

Aşağıdakıları cəhd edin:

 function isEmpty(map) { for(var key in map) { return !map.hasOwnProperty(key); } return true; } 

Sizin həlliniz eyni işlədir, ancaq Object prototipini genişləndirən kitabxana olmadıqda. Bu kifayət qədər yaxşı ola bilər və ya ola bilməz.

40
06 авг. Cavab verildi 06 avqust 2010-08-06 22:19 '10 at 10:19 PM 2010-08-06 22:19