zoukankan      html  css  js  c++  java
  • JS面试题及答案总结

    1. 截取字符串abcdefg的efg 

    <div id="test">abcdefg</div>

    var mytext=document.getElementById("test"); 
    var myvalue=mytext.innerHTML; 
    var jiequ=myvalue.substring(4); 

    2. 写出一下运算结果 


    alert(typeof(null))  // object 
    alert(typeof(undefined))  // undefined 
    alert(typeof(NaN))  // number 
    alert(NaN==undefined)  // false 
    alert(NaN==NaN)  // false 
    var str="123abc"; 
    alert(typeof(str++)) // number 
    alert(str) // NaN

    3.写出程序运行的结果? 


    for(i=0, j=0; i<10, j<6; i++, j++){ 
    k = i + j; 

    }

    结果:10(小心陷阱)

    4. 用正则怎样去掉重复的字符串,只保留一个

    var str= "aaaebbbcccddd";
    str = str.replace(/(.)1+/g,'$1');

    alert(str);

    5. 以下哪个在JAVASCRIPT中会报错: 
    var a=(); 
    var a=[]; 
    var a={}; 
    var a=//; 

    var a=();var a=//; 报错     两个不行!

    6. 下面代码执行结果是什么?

    <script> 
      alert(typeof addB); 
      function addB() { 
      alert("function addB"); 
      } 
      var addB = "variable"; 
      alert(addB); 
    </script> 

    执行结果是"function"和"variable"。 
    JS解析器先预定义了 addB 变量为 undefined, 但是 addB 函数覆盖了此变量,因此一开始执行结果是 function,然后 addB 被赋值为 "variable",因此最后执行结果是 "variable",上面的代码即使变为

    Js代码 

    <script> 
      alert(typeof addB); 
      function addB() { 
      alert("function addB"); 
      } 
      var addB = "variable"; 
      alert(addB); 
    </script> 


    结果也一样,这说明JS解析器先预声明变量,再预定义函数 。 
    小结一下:JS 在执行前会进行类似"预编译"的操作,而且先预定义变量再预定义函数。 

  • 相关阅读:
    C错误调试:当前不会命中断点。没有与此行关联的可执行代码
    将不同的数据写入不同的文件中
    UMFPACK调用的接口
    求解压力备份()
    用C++实现向量二范数
    编写参考文献的方法
    改写UMFPACK算例中的压缩方式(二)
    div文字多行展示,多出的文字用省略号代替
    Internet Explorer Developer Toolbar 中文
    (转帖)天下第七C#学习笔记(3)
  • 原文地址:https://www.cnblogs.com/laneyfu/p/4224001.html
Copyright © 2011-2022 走看看