javascript面试题.docx
上传人:lj****88 上传时间:2024-09-10 格式:DOCX 页数:4 大小:12KB 金币:10 举报 版权申诉
预览加载中,请您耐心等待几秒...

javascript面试题.docx

javascript面试题.docx

预览

在线预览结束,喜欢就下载吧,查找使用更方便

10 金币

下载此文档

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

javascript面试题javascript面试题在各个领域,我们或多或少都会接触到试题,试题是用于考试的题目,要求按照标准回答。相信很多朋友都需要一份能切实有效地帮助到自己的试题吧?下面是小编帮大家整理的javascript面试题,希望能够帮助到大家。1、谈谈对于闭包的理解闭包就是有权访问另一个函数作用域中的变量的函数,MDN上面:闭包是一种特殊的对象,它由两部分构成:函数,以及创建该函数的环境。环境由闭包创建时再作用域中的任何局部变量组成。创建闭包的最常见的方式就是在一个函数内创建另一个函数,通过另一个函数访问这个函数的局部变量,利用闭包可以延长作用域链,缓存数据闭包的特性:函数内再嵌套函数,内部函数可以引用外层的参数和变量,参数和变量不会被垃圾回收机制回收。使用闭包主要是为了设计私有的方法和变量。闭包的优点是可以避免全局变量的污染,缺点是闭包会常驻内存,会增大内存使用量,使用不当很容易造成内存泄露。vargetNum;functiongetCounter(){varn=1;varinner=function(){returnn++;}returninner;}getNum=getCounter();console。log(getNum());//1console。loga(getNum());2、说说你对作用域链的理解当查找变量的时候,会先从当前上下文的变量对象中查找,如果没有找到,就会从父级执行上下文的变量对象中查找,一直找到全局上下文的变量对象,也就是全局对象window,这样有多个执行上下文的变量对象构成的链条就叫做作用域链作用域链的作用是保证执行环境里有权访问的变量和函数是有序的,作用域链的变量只能向上访问,变量访问到window对象即被终止,作用域链向下访问变量是不被允许的简单的说,作用域就是变量域函数的可访问访问,即作用域控制着变量域函数的可见性和生命周期3、请解释一下什么是事件代理事件代理,又称之为事件委托。是JavaScript中常用绑定事件的常用技巧。"事件代理"即是把原本需要绑定的事件委托给父元素,让父元素担当事件监听的职务。事件代理代理的原理是DOM元素的事件冒泡。使用事件代理的好处是可以提高性能可以大量节省内存占用,减少事件注册,比如在table上代理所有td的click事件可以实现当新增子对象时无需再次对其绑定4、事件模型冒泡型事件:当你使用事件冒泡时,子级元素先触发,父级元素后触发。捕获型事件:当你使用事件捕获时,父级元素先触发,子级元素后触发。DOM事件流:同时支持两种事件模型:捕获型事件和冒泡型事件。阻止冒泡:在w3c中,使用stopPropagation()方法,在IE下这只cancelBubble=true。阻止捕获:阻止事件的默认行为,例如click链接后跳转。在w3c中使用PreventDefault()方法,在IE下设置。window。event。returnValue=false。5、什么是面向对象编程及面向过程编程,他们的.异同和优缺点面向过程就是分析出解决问题所需要的步骤,然后用函数把这些步骤一步一步实现,使用的时候一个一个一次调用就可以了。面向对象是把构成问题事物分解成各个对象,建立对象的目的不是为了完成一个步骤,而是为了描述某个事物在整个解决问题的步骤中的行为,向对象是以功能划分问题,而不是步骤。面向对象的基本思想是使用对象,类,继承,封装等基本盖面来进行程序设计。优点:易维护,采用面向对象思想设计的结构,可读性高,由于继承的存在,即使改变需求,那么维护也只是在局部模块,所以维护起来是非诚方便和较低成本的。易扩展,缩短了开发周期,开发工作的重用性,继承性高,降低重复工作量。