Comment vérifier si un objet javascript contient une valeur nulle ou lui-même est nul

Disent que j'hésite à un objet JavaScript appelé jso en Java et j'utilise l'énoncé suivant pour tester s'il est nul

if (jso == null) 

Cependant, cette déclaration semble revenir true lorsque jso contient des valeurs nulles, ce qui n'est pas ce que je veux.

Existe-t-il une méthode qui peut distinguer entre un objet JavaScript null et un objet JavaScript qui contient des valeurs nulles?

Merci

Pour déterminer si la référence cible contient un membre avec une valeur nulle, vous devrez écrire votre propre fonction car aucune n'existe pour vous faire. Une approche simple serait:

 function hasNull(target) { for (var member in target) { if (target[member] == null) return true; } return false; } 

Inutile de dire que cela ne passe que d'un niveau de profondeur, donc si l'un des membres sur la target contient un autre objet avec une valeur nulle, cela renverra toujours faux. En tant qu'exemple d'usage:

 var o = { a: 'a', b: false, c: null }; document.write('Contains null: ' + hasNull(o)); 

Imprimé:

Contient null: true

En revanche, les éléments suivants impriment false :

 var o = { a: 'a', b: false, c: {} }; document.write('Contains null: ' + hasNull(o)); 

Ceci est juste pour votre référence. Ne upvotez pas.

 var jso; document.writeln(typeof(jso)); // 'undefined' document.writeln(jso); // value of jso = 'undefined' jso = null; document.writeln(typeof(jso)); // null is an 'object' document.writeln(jso); // value of jso = 'null' document.writeln(jso == null); // true document.writeln(jso === null); // true document.writeln(jso == "null"); // false 

http://jsfiddle.net/3JZfT/3/

Essayez un extra =

 if (jso === null) 

http://devguru.com/technologies/javascript/11513.asp