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 在执行前会进行类似"预编译"的操作,而且先预定义变量再预定义函数。 

  • 相关阅读:
    awk学习
    Redis快速入门
    Redis源码研究—基础知识
    稳定模式在RESTful架构中的应用
    解析Google集群资源管理系统Omega
    在Ubuntu 14.04 64bit上安装百度云Linux客户端BCloud
    在Ubuntu 14.04 64bit上安装Markdown和绘图软件Haroopad
    在Ubuntu 14.04 64bit上安装网易云音乐Linux版本(最新官方版)
    各数据库连接maven配置
    maven POM.xml 标签详解
  • 原文地址:https://www.cnblogs.com/laneyfu/p/4224001.html
Copyright © 2011-2022 走看看