1.JavaScript 定义了几种数据类型? 哪些是原始类型?哪些是复杂类型?原始类型和复杂类型的区别是什么?
七种数据类型:
数值
字符串
布尔值
undefined
null
对象
原始类型:
数值、字符串、布尔值
复杂类型:
对象:狭义的对象、函数、数组、正则表达式
特殊类型:
undefined、null
原始类型和复杂类型的区别:
原始类型是最基本的类型,不能再细分
复杂类型可以看作是多个原始类型的组合,一个存放各种值容器
2.typeof和instanceof的作用和区别?
typeof 是一个操作符,主要的目的是检测一个变量是不是基本数据类型的变量
instanceof主要的目的是检测引用类型,判断对象是Array,还是RegExp
其实typeof和instanceof的目的都是检测变量的类型,两个的区别在于typeof一般是检测的是基本数据类型,instanceof主要检测的是引用类型!
3.如何判断一个变量是否是数字、字符串、布尔、函数
使用typeof进行判断,如:typeof('a') --> string
4.NaN是什么? 有什么特别之处?
NaN含义是Not a Number,表示非数字,NaN与任何值都不相等,包括它自己
5.如何把非数值转化为数值?
Number()
parseInt()
parseFloat()
+'123'
6.==与===有什么区别
区别在于'==='除了判断内容是否相等外,还需要判断类型是否相等,而'==',只要值相等,javascript会进行隐性转换为相同数据类型进行对比
7.break与continue有什么区别
break是指终止循环体,后面的循环都不再运行
continue是指退出当次循环,进行下一轮循环
8.void 0 和 undefined在使用场景上有什么区别
undefined可以进行赋值或者局部作用域中被覆写
void运算返回之都是undefined,也减少了在原型链查找window.undefined的时间
9.以下代码的输出结果是?为什么?
9.png
10.以下代码的输出结果是?
10.png
11.以下代码的输出结果是? 为什么
11.png
12.遍历数组,把数组里的打印数组每一项的平方
12.png
12-1.png
13.遍历 JSON, 打印里面的值
13.png
13-1.png
14. 以下代码输出结果是? 为什么 (选做题目)
14.png
** 参考资料 **
阮一峰博客JavaScript
运算符
流程控制语句
作者:饥人谷_米弥轮
链接:https://www.jianshu.com/p/6753b72265cc