1.window对象是什么?
window代表浏览器窗口或者框架的全局对象(感觉描述太简单了)
2.this是什么?
this默认指向window,也就是全局变量,在构造函数也就是new fun()中this指向该构造函数,在对象函数中,this指向该对象。
this指向可通过apply()改变,参数为空默认指向全局对象,有参数指向参数所代表对象;
3.闭包是什么?
我目前对闭包的认知有两点,一是闭包可以返回一个函数,该函数可以延期执行;另一方面闭包内部可以封装一个私有变量,该变量因为对外隐藏只有执行闭包返回体时才能操作到,所以该变量不会被外部污染
面试官还详细问了私有变量的访问问题,和闭包内部访问外部变量的问题,这个先记下来,下次涨知识后再来修正。
4.sessionstorage和localstorage?
sessionstorage只在当前页面有效,在新窗口或浏览器关闭均会失效,并且只在本地有效不会传给服务端,local能长期保存
5.cookie?
cookie可以存储一些简单的用户信息,cookie可以在网页窗口及网页子窗口间生效,cookie信息会在浏览此每次发起请求时一起发送到服务端,未设置期限cookie在网页窗口关闭后会失效
6.avalon和angular区别?
目前了解的,路由方面有区别
7.promise
promise我在智能运维1.0项目中用过,项目用的好像是angular中的promise,具体需要再回顾下。
8.性能优化的经验
当时我说了项目有卡顿现象,其实我想到的require异步加载应该是可以的,不过没实践,项目现在基本都用require异步加载了,加载慢基本上只剩下IE性能问题了。
9.let和var的不同?
我之前看过es6的部分语法,不过几乎已经忘了,毕竟公司项目兼容IE8,根本没机会使用。
10.require的AMD和cmd?
这个确实是自己的问题,暂时不会。