1、js 为什么快?
单线程,但凡是复杂的或者是请求数据都可以交给异步
2、node为什么快/发明出来解决了什么问题?
node主要解决的是后端的高明并发问题
3、什么叫js的单线程
【主线程】 代码从上到下执行
4、什么叫js是解释型语言?
浏览器访问网站,把源代码文件拉取到本地,浏览器在一行一行去解析
5、什么叫js是弱类型语言?
变量的数据类型可以任意改变 如何转强类型 用 TS
6、var 的缺点?
1·声明提升 2·没有块级作用域 3·挂载到window上 4·可以重复声明
7、ES6 推出let 和 const 的意义 ? 解决var的缺点
8、const obj={name : 'ddda'};
obj.name =222
可以改变 obj 的内容吗 ? 可以
const 定义 复杂数据类型 不能改变的是 复杂数据类型的指向
9、js中 堆 与 栈的区别?
栈,表示在内存中连续的内存空间,储存基本数据类型,大小较小
堆,表示内存上一段一段不连续的空间,储存复杂数据类型
10、深拷贝 与 浅拷贝 对象 const obj= {name:‘明’,child:{name:‘小小名’}}
浅拷贝 1)const newobj = { ... obj } 2)const newObj = object.assign({},obj)
深拷贝 1)const deepObj = JSON.parse( JSON.stringify ( obj ) ) 缺点 不能深拷贝出 obj . fn
2)const deepObj = _.deepClone(obj)
3) const deepObj = _.merge({},obj)
标签:11,面试题,const,name,数据类型,js,obj,拷贝 From: https://www.cnblogs.com/wfming/p/16893684.html