一、 说说JavaScript中的数据类型?
- 简单数据类型:undifined,null,boolean,string,number,symbol
- 引用数据类型:object
怎么区分
- 简单数据类型:typeof
- 引用数据类型:instanceof
二、javascript中数组的常用方法有哪些
增加:push(),unshift(),splice(),concat()
删除:pop(), shift(),splice(),slice()
修改:splice()
查找:indexOf(), includes(),find()
排序方法:
- reverse():反向排列
- sort():接受一个比较函数,用于判断哪个值排在前面
转换方法: join()
迭代方法:
- some():任何一项返回true,return true
- every():所有项返回true,return true
- forEach(): 没有返回值
- filter():对每一项哦度运行传入的函数,函数返回true的项会组成之后返回
- map():对数组每一项都运行传入的参数,函数由每次函数调用的结果构成的数组
三、对象深拷贝和浅拷贝的区别,如何实现一个深拷贝。
基本数据类型:保存在栈内存中
引用数据类型:保存在堆内存中,应用数据类型的变量是一个指向堆内存中实际对象的引用,存在栈中
浅拷贝:Object.assign, Array.prototype.slice(), Array.prototype.concat()
深拷贝:_cloneDeep(), JSON.stringfy(), 手写循环递归