本节开始讲解 Javascript 的面试考核知识点,首先讲解 数据类型。
1. JavaScript有哪些数据类型,它们的区别?
JavaScript共有八种数据类型,分别是 Undefined、Null、Boolean、Number、String、Object、Symbol、BigInt。
其中 Symbol 和 BigInt 是 ES6 中新增的数据类型:
- Symbol 代表创建后独一无二且不可变的数据类型,它主要是为了解决可能出现的全局变量冲突的问题。每个从Symbol()返回的symbol值都是唯一的。一个symbol值能作为对象属性的标识符,这是该数据类型仅有的目的。 它不支持语法:
"new Symbol()"。
当使用 JSON.stringify() 时,以 symbol 值作为键的属性会被完全忽略;
- BigInt 是一种数字类型的数据,它可以表示任意精度格式的整数
本文详细探讨了JavaScript的八大数据类型,包括Symbol和BigInt的特点与应用场景。讲解了数据类型检测的各种方法,如typeof、instanceof和Object.prototype.toString.call()。此外,还讨论了数组的判断方式和null与undefined的区别,以及NaN和typeof null的特殊情况。文章还涵盖了JavaScript中的类型转换规则,如==操作符的工作原理,以及如何处理浮点数精度问题。最后,介绍了Object.is()与比较操作符的区别,以及BigInt提案的原因,强调了object.assign和扩展运算符的浅拷贝特性。
订阅专栏 解锁全文
1200

被折叠的 条评论
为什么被折叠?



