Maison > Questions et réponses > le corps du texte
var a=new Boolean(false);
var b=false;
alert(a instanceof Boolean);
alert(b instanceof Boolean);
Le premier apparaît vrai
Le second apparaît faux
Pourquoi ? Je ne comprends pas très bien.
阿神2017-07-05 10:58:40
Il existe deux types de valeurs en JavaScript : les types primitifs et les types référence (objets).
false
是一个 boolean
原始类型的值,不是对象,所以 false instanceof Boolean
是 false
.
Similaire "foo" instanceof String
也是 false
.
La vérification des types primitifs peut être effectuée avec typeof
.
Vous verrez typeof false
的值是 "boolean"
, notez le "b" minuscule.
et :
typeof Boolean
是 "function"
Boolean instanceof Object
是 true
Étant donné que JavaScript effectue la conversion de type de manière silencieuse, les utilisateurs ignorent souvent les différences entre les types. Par exemple, une instance de l'objet var length = "hello world".length
,就是把原始类型 string
转换成了 String
.
PHP中文网2017-07-05 10:58:40
var a = new Boolean(false);
var b = false;
alert(typeof a); // 'Object'
alert(typeof b); // 'Boolean'
alert(a === b); // false
过去多啦不再A梦2017-07-05 10:58:40
instanceof est utilisé pour déterminer si un objet est une instance d'un certain constructeur
b n'est évidemment pas un objet
女神的闺蜜爱上我2017-07-05 10:58:40
À l'exception de l'objet, tous les autres types sont des types de base. Ce que vous êtes ici est de déterminer s'il s'agit d'une instance booléenne, qui appartient à l'objet. Le type de base suivant est faux. S'il ne s'agit pas d'une instance booléenne produite par new, le type de base suivant est faux. le résultat sera bien sûr faux.