1. 基本数据类型
- String
- Number
- Boolean
- Undefined
- Null
- Symbol
- Bigint
2. 引用数据类型
Object
相关题目:
1.
字符串和其他类型相加,变成连接的形式
console.log(true + 1); // 2
console.log('name' + true); // nametrue
console.log(undefined + 1); // NaN
console.log(typeof null); // object
2.
NaN是一个数值类型,但不是一个具体的数字
console.log(typeof (NaN)); // number
console.log(typeof (undefined)); // undefined
console.log(typeof (null)); // object
3. null 和 undefined 的区别
console.log(typeof (null)); // object
console.log(Number(null)); // 0
console.log(typeof (undefined)); // undefined
console.log(Number(undefined)); // NaN
- 作者在设计js的时候是先设计null的(最初设计js的时候借鉴了java语言)
- null会被隐式转换为0,很不容易发现错误
- 先有null,后有undefined是为类填补之前的坑
具体的区别:Javascript最初的版本是这样区分的:null是一个表示"无"的对象(空对象指针),转换为数值时为0;undefined是一个表示"无"的原始值,转换为数值时为NaN
4. ==和===的区别
==比较的是值
string == number || boolean ...... 都会隐式转换
通过valueOf转换(valueOf()方法通常由JavaScript在后台自动调用,并不会显示在代码中)
===既比较值也比较类型
console.log(1 == '1'); //true
console.log(true == 1); //true
console.log(null == undefined); //true
console.log([1, 2] == '1,2'); //true
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)