Πως ελεγχουμε αν ενα javascript object ειναι empty.
Υπαρχουν φορες που χρειαζεται να ελεγξουμε ενα object αν ειναι αδειο ή περιεχει δεδομενα. Παραδειγμα μετα απο ενα ajax request. Ομως ενω για array κατι τετοιο ειναι πολυ ευκολο χρησιμοποιωντας το .length στα object ειναι λιγο διαφορετικα. Αυτο που χρειαζεται να κανουμε ειναι να δημιουργησουμε μια ξεχωριστη function η οποια στην ουσια ελεγχει εαν τα key εχουν properties με το .hasOwnProperty. Επειτα εμεις οταν την καλουμε της περναμε σαν παραμετρο το object που θελουμε να ελεγξουμε. Ας δουμε τον κωδικα ο οποιος ειναι πολυ απλος και καλο ειναι να τον κρατησετε καπου γιατι σιγουρα θα σας χρειαστει καποια στιγμη.
function isEmpty(obj) { for(var key in obj) { if(obj.hasOwnProperty(key)) return false; } return true; }
και την χρησιμοποιουμε καπως ετσι:
var myObj = {}; // Empty Object if(isEmpty(myObj)) { // Object is empty (Would return true in this example) } else { // Object is NOT empty }
Προσωπικα για ευκολια την εχω περασει στο Object prototype και σας προτεινω να κανετε το ιδιο.