var、let、const 的区别
- var 是ES5 语法,let、cosnt 是ES6语法,var有变量提升
- let、cosnt能形成块级作用域,var没有
- var、let可修改,是变量,const是常量,不可修改
typeof 能判断哪些类型
- undefined、string、number、Boolean、symbol
- object(注意:typeof null === object)
- function
列举强制类型转换和隐式类型转换
- 强制:parsenInt、parseFloat、toString等
- 隐式:if、逻辑运算、==、+拼接字符串
手写深度比较 lodash.isEqual
const isEqual = (obj1, obj2) => {
//判断是否为基本类型值
if(typeof(obj1)!=="object" || typeof(obj2)!=="object"){
return obj1 === obj2
}
//判断传入的函数是否为同一函数
if(obj1 === obj2){
return obj1 === obj2
}
//判断长度是否相等
const obj1Keys = Object.keys(obj1)
const obj2Keys = Object.keys(obj2)
if(obj1Keys.length !== obj2Keys.le