作家
登录

25个最基本的JavaScript面试问题及答案

作者: 来源: 2017-09-15 11:56:10 阅读 我要评论

例3: 1 + -"1" + "2" 输出: "02" 解释:这里的解释和前一个例子雷同,除了此处的一元运算符是 - 而不是 +。先是 "1" 变为 1,然后当应用 - 时又变为了 -1 ,然后将其与 1相加,结不雅为 0,再将其转换为字符串,连接最后的 "2" 运算对象,获得 "02"。

例4: +"1" + "1" + "2" 输出: "112" 解释:固然第一个运算对象 "1"因为前缀的一元 + 运算符类型转换为数值,但又急速转换回字符串,当连接到第二个运算对象 "1" 的时刻,然后又和最后的运算对象"2" 连接,产生了字符串 "112"。

要答复这个问题,你须要精确懂得JavaScript的事宜和时光设置。

例5: "A" - "B" + "2" 输出: "NaN2" 解释:因为运算符 - 不克不及被应用于字符串,并且 "A" 和 "B" 都不克不及转换成数值,是以,"A" - "B"的结不雅是 NaN,然后再和字符串 "2" 连接,获得 "NaN2" 。

例6: "A" - "B" + 2 输出: NaN 解释:拜见前一个例子, "A" - "B" 结不雅为 NaN。然则,应用任何运算符到NaN与其他任何的数字运算对象,结不雅仍然是 NaN。

16.下面的递归代码在数组列表偏大年夜的情况下会导致客栈溢出。在保存递归模式的基本上,你怎么解决这个问题?

  1. var list = readHugeList();  
  2. var nextListItem = function() {  
  3.     var item = list.pop();  
  4.     if (item) {  
  5.       // process the list item... nextListItem();  
  6.     } 
  7. }; 

潜在的客栈溢出可以经由过程修改nextListItem 函数避免:

  1. var list = readHugeList();  
  2. var nextListItem = function() {  
  3.     var item = list.pop();  
  4.     if (item) {  
  5.         // process the list item... setTimeout( nextListItem, 0);      
  6.     } 
  7. }; 

客栈溢出之所以会被清除,是因为事宜轮回把持了递归,而不是调用客栈。

17.JavaScript中的“闭包”是什么?请举一个例子。

下面是一个简单的例子:

  1. var globalVar = "xyz"
  2. (function outerFunc(outerArg) { 
  3.     var outerVar = 'a';  
  4.     (function innerFunc(innerArg) {  
  5.         var innerVar = 'b';  
  6.         console.log( "outerArg = " + outerArg + "" + "innerArg = " + innerArg + "" + "outerVar = " + outerVar + "" + "innerVar = " + innerVar + "" + "globalVar = " + globalVar); 
  7.     })(456); 
  8. })(123); 

在膳绫擎的例子中,来自于 innerFunc, outerFunc和全局定名空间的变量都在 innerFunc典范围内。是以,膳绫擎的代码将输出如下:

  1. outerArg = 123  

      推荐阅读

      AI、大数据、云计算:重塑金融产业的锋芒利刃

    51CTO诚邀您9月23号和秒拍/国美/美团元专家一路聊智能CDN的优化之路,抓紧时光哦! 智能科技的出现、大年夜数据风口的到来、生物辨认技巧的广泛应用都在开端影响我们的生活,并开启了一个&>>>详细阅读


    本文标题:25个最基本的JavaScript面试问题及答案

    地址:http://www.17bianji.com/lsqh/37446.html

关键词: 探索发现

乐购科技部分新闻及文章转载自互联网,供读者交流和学习,若有涉及作者版权等问题请及时与我们联系,以便更正、删除或按规定办理。感谢所有提供资讯的网站,欢迎各类媒体与乐购科技进行文章共享合作。

网友点评
自媒体专栏

评论

热度

精彩导读
栏目ID=71的表不存在(操作类型=0)