1,vue优势为什么使用vue
【1】只专注与视图层的轻量级的框架
【2】数据的双向绑定 优点是减少了dom操作
【3】组件化 和 响应式设计
【4】实现数据与结构的分离 高效轻便 易于浏览器的加载速度
2,eval 是做什么的?
【1】把字符串转化为json格式的字符串(js代码) 并使用
【2】有一定的性能消耗
3,对es6的理解
【1】es6是对es5的一个进阶 是一个新的level 其实更偏向标准化
【2】es6是基于js是一门弱类型的语言 为了解决浏览器的支持问题 可以通过babel工具转化 在浏览器上运行
【3】es6象征性的就是变量的提升问题
cost=>(块级作用域 声明必须赋值不然报错 存在暂时性的死区问题)
let=>(块级作用域 存在暂时性死区 用于for循环中变量 必须先声明后赋值)
【4】promise对象的使用 在vue中import 模块的引入 以及export模块的导出 解决原来的require.js导入文件的问题
【5】类的声明与继承class 还有extends对类的扩展 使用真正面向对象的语言 而不是原型实现继承
4,怎么做项目中的性能优化
【1】标签语义化
【2】样式的压缩合并
【3】图片的整合 减少其数量
【4】减少HTTP请求数量 加载进行优化 数据优化
网络性能优化(方法:DNS预解析 好处 :挺高访问效率)
通过预加载一些域名,提前去做DNS解析,加快响应速度。
5,对this的理解
【1】this就是指代js的当前指向问题
对象的方法的调用时 obj.fn()
this就是指代当前对象本身
【2】定时器中的this 代用函数
6,怎么实现es6数组的便捷去重
【1】利用ES6的set
Set数据结构,它类似于数组,其成员的值都是唯一的。
利用Array.from将Set结构转换成数组
functiondedupe(array){
returnArray.from(newSet(array));
}
dedupe([1,1,2,3]) //[1,2,3]