让前端飞Web 前端开发

【IMWeb秋招训练营】【Day10】面试题总结

2017-07-21  本文已影响76人  公子七

经典面试题

37.哪些地方会出现css阻塞,哪些地方会出现js阻塞?
<script>
var script=document.createElement("script");
script.type="text/javascript";
script.src="file.js";
document.getElementsByTagName("head")[0].appendChild(script);
</script>

此技术的重点在于:无论在何处启动下载,文件额下载和运行都不会阻塞其他页面处理过程。即使在head里(除了用于下载文件的http链接)。

38.CSS选择符有哪些?哪些属性可以继承?优先级算法如何计算?内联和important哪个优先级高?
39.在JavaScript我们会遇到闭包,请你们根据自己的理解分析一下什么是闭包?闭包有什么好处?使用闭包要注意什么?

传送门:https://segmentfault.com/a/1190000000652891

40.如何阻止事件冒泡和默认事件(程序)
// 阻止事件冒泡
stopPropagation: function(ev) {
    if (ev.stopPropagation) {
        ev.stopPropagation();
    } else {
        ev.cancelBubble = true;
    }
},
// 取消事件的默认行为
preventDefault: function(event) {
    if (event.preventDefault) {
        event.preventDefault();
    } else {
        event.returnValue = false;
    }
},

两道思考题~

19.谈谈垃圾回收机制方式及内存管理.

内存泄漏指任何对象在您不再拥有或需要它之后仍然存在。
垃圾回收器定期扫描对象,并计算引用了每个对象的其他对象的数量。如果一个对象的引用数量为 0(没有其他对象引用过该对象),或对该对象的惟一引用是循环的,那么该对象的内存即可回收。
setTimeout 的第一个参数使用字符串而非函数的话,会引发内存泄漏。
闭包、控制台日志、循环(在两个对象彼此引用且彼此保留时,就会产生一个循环)

20.开发过程中遇到的内存泄露情况,如何解决的?

之前自己总结的内存泄漏笔记:http://blog.csdn.net/az_77/article/details/74930137

上一篇下一篇

猜你喜欢

热点阅读