1.async和await的区别?
区别:
async是来定义函数的,定义异步函数,打印函数名可以得到一个promise对象,言外之意可以通过这个 函数名称.then 这个方法
await 后面跟的是任意表达式,一般使用promise的表达式
async 内部实现,有返回值 成功返回promise.resolve() ,出错返回promise.reject() 返回值用catch捕获
await 等待后面的promise对象执行完毕,拿到了promise.resolve()的值之后,执行后面的代码。await后面的表达式,能是promise.reject(),所以建议await放在try…catch语句中
优点:async和await 属于es7语法。编写方便,提高程序效率,避免了回调地狱
补充:promise和async和await的区别
promise es6语法,promise中包含catch,async需要自己定义catch
promise 提供的方法会多一些,all、race等方法,aync中是没有的。
2.es6新增?
新增模版字符串
箭头函数
增加let、const来声明变量
for-of用来遍历数据-例如数组中的值
解构赋值
新增简单数据类型Symbol,独一无二的,不会与其他属性名冲突
将Promise对象纳入规范,提供了原生的Promise对象
3.项目性能优化方案?
1.动态加载组件 <component :is="componA" />
2.减少http请求
3.减少DNS查询
4.使用CDN
5.避免重定向
6.图片懒加载
7.路由懒加载
8.减少DOM元素操作
9.使用外部js和css
10.压缩js、css、字体、图片等
11.使用iconfont字体图标、雪碧图等
12.避免图片的src为空
13.把样式表放在link中
14.把js放在页面的底部