Cet article présente principalement en détail les informations pertinentes sur les objets standard JavaScript, qui ont une certaine valeur de référence. Les amis intéressés peuvent se référer à
Dans le monde de JavaScript Ici, tout est un. objet.
Mais certains objets sont quand même différents des autres. Afin de distinguer le type d'objet, nous utilisons typeofoperator pour obtenir le type d'objet, qui renvoie toujours unestring :
typeof 123; // 'number' typeof NaN; // 'number' typeof 'str'; // 'string' typeof true; // 'boolean' typeof undefined; // 'undefined' typeof Math.abs; // 'function' typeof null; // 'object' typeof []; // 'object' typeof {}; // 'object'
On peut voir que nombre, chaîne, booléen, fonction et non défini sont différents de d'autres types. Faites particulièrement attention au fait que le type de null est un objet et que le type de Array est également un objet. Si nous utilisons typeof, nous ne pourrons pas faire la distinction entre null, Array et object au sens habituel - {}.
Objets d'emballage
En plus de ces types, JavaScript fournit également des objets d'emballage. Les amis qui connaissent Java connaîtront certainement int et <. 🎜 >EntierCette relation ambiguë. Le nombre, le booléen et la chaîne ont tous des objets d'emballage. Oui, en JavaScript, les chaînes font également la distinction entre le type chaîne et son type wrapper. Les objets d'emballage sont créés avec de nouveaux :
var n = new Number(123); // 123,生成了新的包装类型 var b = new Boolean(true); // true,生成了新的包装类型 var s = new String('str'); // 'str',生成了新的包装类型
typeof new Number(123); // 'object' new Number(123) === 123; // false typeof new Boolean(true); // 'object' new Boolean(true) === true; // false typeof new String('str'); // 'object' new String('str') === 'str'; // false
string ! ! ! Si on utilise
Number, Boolean et String sans écrire new Ce qui se produit? À l'heure actuelle,
Number(), Boolean et String() sont traités comme des fonctions ordinaires pour convertir tout type de data Pour les types numéro, booléen et chaîne (notez son type d'emballage) :
var n = Number('123'); // 123,相当于parseInt()或parseFloat() typeof n; // 'number' var b = Boolean('true'); // true typeof b; // 'boolean' var b2 = Boolean('false'); // true! 'false'字符串转换结果为true!因为它是非空字符串! var b3 = Boolean(''); // false var s = String(123.45); // '123.45' typeof s; // 'string'
nouveau numéro( ), new Boolean(), new String()Créez un objet wrapper ;>parseFloat()
numéro ; Utilisez String() pour convertir n'importe quel type en string
toString()< d'un objet 🎜>Méthode Habituellement, il n'est pas nécessaire de convertir un type ; à booléen avant de juger, car vous pouvez directement
Écrire if (myVar) {...};typeof opérateur Vous pouvez juger nombre, booléen, chaîne, fonction et non défini
; 🎜>Juge ArrayPour utiliser Array.isArray(arr); Veuillez utiliser myVar; === null
Pour déterminer si une variable globale existe, utilisez typeof window.
typeof myVar === 'undefined' . Enfin, un étudiant attentif a souligné que tout objet a une méthode
toString()null et
undefinedclasse d'objet . 更细心的同学指出,number对象调用toString()报SyntaxError: 遇到这种情况,要特殊处理一下: 不要问为什么,这就是JavaScript代码的乐趣! Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!123.toString(); // SyntaxError
123..toString(); // '123', 注意是两个点!
(123).toString(); // '123'