复习参考了以下文章,感谢各位作者:
https://blog.csdn.net/u013592575/article/details/95087953
- js包括几种数据类型?
八种
基本数据类型:boolean,string,number,null,undefined。
引用数据类型:object
ES6新增:symbol–这种类型的对象永不相等,即使传入相同的值,也不相等。作为一种标记,解决属性名冲突的问题。
谷歌67新增:bigInt–安全存储,操作大整数
2.object中包括几种类型?
Function,Array,Data
3.typeof输出什么?
[],{},object,正则表达式输出object
console.log()输出function
使用Number(‘ab’)将ab值转化为数字,输出NaN
NaN是number的一种非Number
js规定NaN !== NaN
使用isNaN检测()是否是非数值型
?根据以上原则,输出结果
1.Number('as') == NaN -> false
2.Number('123') == NaN -> false
4.如何判断数据类型?
- typeof:检测基本数据类型(注:null是Null类型,属于基本类型,但是typeof null 返回的是字符串’object’;)
- instanceof:检测引用数据类型(注:instanceof与引用类型连用时,返回false)
5.检测数组类型的方法?
- instanceof
- constructor
- Array.isArray()
let arr = [1,2,3];
let text = 123;
console.log(arr instanceof Array); //true
console.log(text instanceof Array); //false
console.log (arr.constructor === Array); //true
console.log (text.constructor === Array); //false
console.log (Array.isArray(arr)); //true
console.log (Array.isArray(text)); //false
6.null和undefined的区别?
Null只有一个值是null。指不存在的对象。null有定义但为空。
Undefined只有一个值是undefined。undefined没有定义。
7.判断时为null空的原因?
- 方法/字符串变量/对象不存在
- 接口类型对象没初始化
判断时可先判断当前对象是否为null再去进行后续操作。