前端面试题(1)-----JavaScript
什么是事件代理(事件委托)?好处?
事件代理( Event Delegation),又称为事件委托,是JavaScript中绑定事件常用的技巧,“事件代理”就是把原本需要绑定的事件,委托给父元素,让父元素负责事件监听,事件代理的原理是DOM元素的事件冒泡,使用事件代理的好处是可以是可以提高性能。
好处:减少事件数量,提高性能
预测未来元素,新添加的元素仍然可以触发该事件
避免内存泄漏,在低版本ie中,防止删除元素而没有移除事件造成的内存泄露。
说说你对原型( prototype )的理解。
javaScript 是一种通过原型实现继承的语言,它与别的高级语言是有区别的,例如Java. C#是通过类型决定继承关系的,JavaScript 是动态的弱类型语言。总之,可以认为JavaScript中所有数据都是对象。在JavaScript中,原型也是一个对象,用原型可以实现对象的属性继承,JavaScript 的对象中都包含了一个"prototype"内部属性,这个属性所对应的就是该对象的原型。
作为对象的内部属性,"prototype"是 不能直接访问的。所以,为了方便查看对象的原型,Firefox 和Chrome内核的JavaScript 引擎中提供了"_ proto_ "这个非标准的访问器(ECMA新标准中引入了标准对象原型访问器"bjctgtPrototypelobiject)" ).
原型的主要作用就是实现继承与扩展对象
阻止事件冒泡的方法:
包括兼容ie和标准浏览器,下面给出示例代码:
function stopBubble(e){
var evt =e||window.event,
evt.stopPropagationg ? evt.stopPropagatlont( ) : (evt.cancelBubble-true);
}
我或许败北,或许迷失自己,或许哪里也抵达不了,或许我已失去一切,任凭怎么挣扎也只能徒唤奈何,或许我只是徒然掬一把废墟灰烬。

浙公网安备 33010602011771号