【读书笔记】你不知道的JavaScript--内置类型

发布时间:2019-08-13 发布网站:脚本宝典
脚本宝典收集整理的这篇文章主要介绍了【读书笔记】你不知道的JavaScript--内置类型脚本宝典觉得挺不错的,现在分享给大家,也给大家做个参考。

js有7种内置类型,分别是
undefined null boolean string number symbol object
除对象之 Object 外,其他统称为“基本类型”。
符号 symbol 是ES6 中新增

null 以外的六种类型均有同名的字符串值与之对应

tyPEof undefined === "undefined"; // true
typeof true === "boolean"; // true
typeof 1 === "number"; // true
typeof "1" === "string"; // true
typeof {} === "object"; // true
typeof Symbol() === "symbol"; // true
typeof null === "object";  // true

typeof 返回值为 object 的值中,只有 null 为假值,所以我们可以用下面方法检查变量是否null

VAR a = null;
(!a && typeof a === "object"); // true

再来看下面一段代码

typeof function a(){} === "function"; // true

虽然 typeof 会为函数返回单独的字符串值 function,但是规范约定它实际上是 object 的一个“子类型”。具体来说,函数是“可调用对象”,它有一个内部属性 [[Call]],该属性使其可以被调用。

另一个需要注意的是数组

typeof [] === "object"; // true

确切地说,数组也是 object 的一个“子类型”
我们可以通过下面的方法检查变量是不是数组

var a = []
Array.isArray(a)   // true
Object.PRototype.toString.call(a) === "[object Array]"  // true

typeof 处理未声明的变量时,会返回 undefined, 这是因为 typeof 有一个特殊的安全范机制。这样我们可以安全的检查变量是否声明了

if (!nodeclar) {   // 如果nodeclar为声明,会报错
    // ...
}
if (typeof nodeclar !== undefined) { // 不报错
    // ...
}

需要注意的是

在对变量执行 typeof 操作时,得到的结果并不是该变量的类型,而是该变量持有的值的类型,因为 JavaScript 中的变量没有类型。

脚本宝典总结

以上是脚本宝典为你收集整理的【读书笔记】你不知道的JavaScript--内置类型全部内容,希望文章能够帮你解决【读书笔记】你不知道的JavaScript--内置类型所遇到的问题。

如果觉得脚本宝典网站内容还不错,欢迎将脚本宝典推荐好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。