数组

  1. 以下写法的区别

    var num1 = 100;var num2 = new Number(100)
    var str1 = 'message';var str2 = new String('message')
    var bool1 = true;var bool2 = new Boolean(true)
       
    var arr1 = [];var arr2 = new Array();

    对于数字、字符串与布尔类型的数据两种声明方式变量都是原始类型,而数组是引用类型。所以只有数组与其他三种有区别。

得到undefined值得情况

  1. 声明变量但不初始化

    var msg;
  2. 声明变量并初始化为undefined

    var msg = undefined;
  3. 函数默认的return语句所返回得值为undefined

    function fn() {
      console.log("1");
    }
  4. 函数设置return返回undefined

    function fn() {
      return undefined;
    }
  5. 访问一个对象中不存在得属性,结果为undefined

    var obj = {
        name:'李雷',
        age:18
    }
    console.log(obj.job);