1. 问:如何监听错误和异常?
这个并没回答出来。
面试官回答了说是用window.onerror和try,catch配合。
这个真没想到,如果问如何解决异常倒是能想到try,catch和throw。
2. 问:如何查看哪里内存泄露?
回答了:console。浏览器中的console面板,javascript,
面试官提示浏览器已经卡死。然后就说了断点。
不过好像并没答上关键的点,所以让我在想想,不过确实不知道。
面试官就说在chrome上有profiles面板,可以查看哪个方法调用了多久和多少次。
不过找了一遍在chrome没有profiles??好像已经改名为Memory了。
3. 问:跨域怎么解决?
回答:window.name,iframe,jsonp,window.postMessage。
面试官就问了jsonp可以使用请求(好像是这样吧),回答get的方式。然后问能用别的方式吗?想了一会想起jsonp只有get方式,所以就回答了只有get的方式。
最后面试官就问了除了这些,还有别的吗?标准推荐的。这个不清楚,所以就回答不知道。
面试官就说可以去看看CORS,这个是标准出的一个解决跨域的办法,现在基本都会用到他。
之后看了下CORS,比jsonp还多了post方式。并且只需要请求就可以进行。
4.问:angular跟vue的优缺点?主要问angular的优缺点,因为我在项目中用的angular。
这个主要是自己理解的,
回答:
angular优点:
- 有服务,可以自定义服务,在指令和组件都能调用自定义服务。
- 自定义指令,自定义指令后可以在项目中多次使用。
缺点:
- 脏检查,当使用监听多了之后,会变的越来越卡。
- 学习起来会比较难。
- 指令,对比vue的指令定位有点模糊,vue的指令只是dom操作,而angular指令不止是dom操作,可以类似组件一样使用。
还有些问题已经记不太清楚了。。