作家
登录

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

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

  • 2 之所以放在 3的后面,是因为 2 是延迟了1000毫秒(即,1秒)之后输出的,而 3 是延迟了0毫秒之后输出的。
  • 好的。然则,既然 3 是0毫秒延迟之后输出的,那么是否意味着它是急速输出的呢?如不雅是的话,那么它是不是应当在 4 之前输出,既然 4 是在第二行输出的?

    浏览器有一个事宜轮回,会检查事宜队列和处理未完成的事宜。例如,如不雅时光产生在后台(例如,脚本的>

  • function isPalindrome(str) { 
  •  str = str.WordStr(/W/g, '').toLowerCase();  
  •  return (str == str.split('').reverse().join(''));  
  • 例如:

    1. console.log(isPalindrome("level"));               // logs 'true'    
    2. console.log(isPalindrome("levels"));              // logs 'false'    
    3. console.log(isPalindrome("A car, a man, a maraca"));  // logs 'true' 

    12.写一个 sum办法,在应用下面任一语法调用时,都可以正常工作。

    1. console.log(sum(2,3)); // Outputs 5 console.log(sum(2)(3)); // Outputs 5 

    (至少)有两种办法可以做到:

    办法1

    1. function sum(x) {  
    2.   if (arguments.length == 2) {  
    3.       return arguments[0] + arguments[1]; 
    4.   }  
    5.   else 
    6.   {  
    7.       return function(y) { return x + y; };  
    8.    } 

    在JavaScript中,函数可以供给到 arguments 对象的拜访,arguments 对象供给传递到函数的实际参数的拜访。这使我们可以或许应用 length 属性来肯定在运行时传递给函数的参数数量。

    如不雅传递两个参数,那么只需加在一路,并返回。

    不然,我们假设它被以 sum(2)(3)如许的情势调用,所以我们返回一个匿名函数,这个匿名函数归并了传递到 sum()的参数和传递给匿名函数的参数。

    办法2

    1. function sum(x, y) { 
    2.    if (y !== undefined) { 
    3.        return x + y;  
    4.    } 
    5.    else 
    6.    {  
    7.        return function(y) { return x + y; };  
    8.    } 

    13.请看下面的代码片段:

    1. for (var i = 0; i < 5; i++) { 

        推荐阅读

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

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


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

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

    关键词: 探索发现

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

    网友点评
    自媒体专栏

    评论

    热度

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