• JS中null与undefined的区别


    1. 相同点

      if 判断语句中,两者都会被转换为false

    2. 不同点

    • Number转换的值不同,Number(null)输出为0, Number(undefined)输出为NaN

    • null表示一个值被定义了,但是这个值是空值
      • 作为函数的参数,表示函数的参数不是对象

      • 作为对象原型链的终点 (Object.getPrototypeOf(Object.prototype))

      • 定义一个值为null是合理的,但定义为undefined不合理(var name = null)      
    • undefined表示缺少值,即此处应该有值,但是还没有定义
      • 变量被声明了还没有赋值,就为undefined

      • 调用函数时应该提供的参数还没有提供,该参数就等于undefined

      • 对象没有赋值的属性,该属性的值就等于undefined

      • 函数没有返回值,默认返回undefined

    • 示例     

    var i;
    i // undefined
    
    function f(x){console.log(x)}
    f() // undefined
    
    var  o = new Object();
    o.p // undefined
    
    var x = f();
    x // undefined

    详情参考:http://www.ruanyifeng.com/blog/2014/03/undefined-vs-null.html

         

  • 相关阅读:
    vue 之 vuex
    vue中this.$router.push() 传参
    ES6新特性
    css优先级
    创建第一个vue工程
    对Vue.js的认知
    前端的认知与见解
    Web前端常见问题
    数据库如何进行索引优化
    Python FAQ
  • 原文地址:https://www.cnblogs.com/lvmylife/p/8183653.html
Copyright © 2020-2023  润新知