面试题中高级部分_第1页
面试题中高级部分_第2页
面试题中高级部分_第3页
已阅读5页,还剩3页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、面试题精选 JS 中高级所有爱前端的题目JS 高级题目、脑洞题目都不在内,它们也要看!我们仅选择其中的几个题目来讲解一下。以下哪个字不属于 javascript 的保留字(B)A.with答:B. parentC. classD. voidE. arguments以下那条语句会产生错误A. var obj=();B. var obj=;C. var obj=/;D. var obj=;E. var obj=new Object();(A、C)答:A 有错误B 没错C 有错误D 没错E 没错A 是关键字,所谓关键字是指可用于表示语句的开始或结束,或者用于执行特定操作等。按照规则,关键字也是语言保

2、留的,不能用作标识符。B 啥也不是。C class 是ECMA-262 第 3 版中的保留字,但是ECMA-262 第 5 版中就不是保留字了,变为关键字了。D void 是关键字保留字指的是现在没有意思,但是ES2016、2017、会用到的单词。E ECMA-262 第 5 版对eval 和 arguments 还施加了限制。在严格模式下,这两个名字也不能作为标识属性名,否则会抛出错误。以下代码显示的结果为: ()A. name1、undefinedC. name2、undefinedB. name1、name2D. name2、name1遮蔽效应 objName 是 name2,而函数没有

3、返回值,所以 alert 就是 undefined。已知对象 var obj = ;但对象的属性未知,如何对该对象的属性进行遍历?请顺序写出输出结果:见语句注释for(var k in obj)nodeType 是用来干什么的?空白节点的 nodeType 等于多少?是:3下面哪一个是用来追加到指定元素的末尾的()A.insertAfter()B.append()C.appendTo()D.after()下列 javaScript 代码执行后。iNum 的值是continue 表示终止这次循环,立即进入下一次循环。break 表示彻底结束。:8append 没有这个方法,只有 appendCh

4、ild() appendTo 原生 JS 没有这个方法after() 原生 JS 没有这个方法,只有 insertAfter记住,文档的上树原生中就三个:appendChild、insertBefore、insertAfter。记住面试题要饱满,可以答非所问。必须答非所问。彰显的知识饱满度。是 DOM 节点的属性,用来表示这个节点的类型。1 元素节点,空的元素也是元素节点,nodeType 是 1。3 文本节点,在高级浏览器中,认为下图中 p 前后空的位置也是节点,是文本节点,nodeType 是 3。8 注释节点下列 JavaScript 代码执行后,alert()的结果是什么?:10黄色的

5、部分是且逻辑,用逗号罗列条件,都要为 true。不需要写&。j 最先碰壁了,j 为 5 的时候是最后一次循环,此时 i 也是 5。Javascript 中表达式 parseInt(“X8X8”)+ paseFloat(“8”)的结果是()A.8+8B.88C.16D“8”+8出错了,应该是 NaN + 8 等于 NaN对 string对象进行扩展,使其具有删除前后空格的方法。这个题目出现概率在 90%以上!面试 5 家必考一家。这种函数叫做 trim。正则表达式:Stotype.trim=function()return this.replace(/(s*)|(s*$)/g,

6、 );Stotype.trim = function() var str = this;while(str0 = ) str = str.substr(1);while(strstr.length - 1 = )str = str.substr(0,str.length - 1);return str;请写出如下 JavaScript 代码片段的运行结果。30、20、12、6、2请写出一个函数 getParamentters()来获取浏览器地址栏 URL 全部参数,并返回一个 JSON 串。男&hobby=游泳&hobby=上网变为id : 4 , name : 34 , s

7、ex : 男 , hobby : , 上网 function getParamentters()var querystring = window.location.search; var obj = ;if(querystring)/去掉问号var _querystring = querystring.substr(1); var _queryArr = _querystring.split(&);/遍历数组for(var i = 0 ; i _queryArr.length ; i+) var k = (_queryArri.split(=)0;var v = (_queryArri.spl

8、it(=)1;/检查 k 是否已经在 v 中存在if(obj.hasOwnProperty(k)/检查此时它的 v 是不是已经是数组了if(!Array.isArray(objk)/不是数组变为数组objk = objk;objk.push(v);elseobjk = v;return obj;请选择一下代码输出的值()A.1,2,3,4B.1,3,2,4C.1,4,2,3D.1,4,3,2再来一个引申题:输出实在 99999 之后用正则表达式和普通方法怎样去掉连续重复的字符串,而只保留其中的一个?比如abbbbcccddbbbb变为abcdb正则:var str = abbbbcccddbb

9、bb;str = str.replace(/(.)1*/g,$1); console.log(str);console.log(1); setTimeout(function()console.log(2);,0);setTimeout(function() console.log(3);,0);console.log(4);普通方法i、j 指针法,请参考“消消乐”的题目:查找字符串中是否有连续 3 项或 3 项以上重复字符,如果有则返回这些字符的下标位置。小贤是一条可爱的小狗(Dog),它的描述可以得到以下对象:很好听(wow),每次看到时就会叫一声(yelp)。从这段小芒和小贤一样,原先也

10、是一条可爱的小狗,突然有一天疯了(MadDog),看到人就会每隔半秒叫一声(wow),且不停的叫唤(yelp)。请根据描述,按示例的形式用代码来实现。(继承,原型,setInterval)function Dog() this.wow = function() console.log(wow);this.yelp = function() this.wow();function MadDog()/重写 yelp 方法:this.yelp = function() setInterval(this.wow,500);/疯狗也是狗,所以疯狗要 extends 狗:MadDtotype

11、= new Dog();var xiaoxian = new Dog(); xiaoxian.yelp();function Dog() this.wow = function() alert(wow);this.yelp = founction() this.wow();var str = aaaaaaabbbbbbccccdddddddeeeeeeee; var i = 0;var j = 1;var resultstr = ;while(i str.length) if(stri != strj)resultstr += stri; i = j; j+;console.log(resul

12、tstr);对作用于上下文和 this 的理解,看下列代码:问两处 console 输出什么?为什么?话就长了,this 是函数运行时候才能确定的,和函数怎么定义无关。如果是对象打点调用,this 就是对象。如果是圆括号直接调用就是 window 对象,就是全局变量。用 JS 写一个当年还剩多少时间的倒计时程序。面试官绝对看你的细节,大胆写!var fullyear = (new Date().getFullYear(); var nextyear = fullyear + 1;/本年的最后一毫秒:var lastday = new Date(new Date(nextyear,0,1) -

13、1);var now = new Date();var diff = lastday - now; /毫秒数var tian = Math.floor(diff / (1000 * 60 * 60 * 24);var shi = Math.floor(diff % (1000 * 60 * 60 * 24) / (1000 * 60 * 60);var fen = Math.floor(diff % (1000 * 60 * 60 * 24) % (1000 * 60 * 60) / (1000 * 60);var miao = Math.floor(diff % (1000 * 60 * 60 * 24) % (1000 * 60 * 60) % (1000 * 60) / 1000);console.log(tian) console.log(shi) console.log(

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论