美文网首页
null与undefined

null与undefined

作者: wyq_0bed | 来源:发表于2017-06-13 17:13 被阅读0次

一、相似性
在JavaScript中,将一个变量赋值为undefined或null,老实说,几乎没区别。

var a = undefined;
var a = null;

if (!undefined) 
    console.log('undefined is false');
// undefined is false

if (!null) 
    console.log('null is false');
// null is false

undefined == null
// true

上面代码中,a变量分别被赋值为undefined和null,这两种写法几乎等价。
undefined和null在if语句中,都会被自动转为false,相等运算符甚至直接报告两者相等。

二、目前的用法
1、null表示"没有对象",即该处不应该有值。典型用法是:
(1) 作为函数的参数,表示该函数的参数不是对象。
(2) 作为对象原型链的终点。

Object.getPrototypeOf(Object.prototype)
// null
Object.getPrototypeOf(object)  返回对象的原型

2、undefined表示"缺少值",就是此处应该有一个值,但是还没有定义。典型用法是:
(1)变量被声明了,但没有赋值时,就等于undefined。
(2) 调用函数时,应该提供的参数没有提供,该参数等于undefined。
(3)对象没有赋值的属性,该属性的值为undefined。
(4)函数没有返回值时,默认返回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

(完)

相关文章

  • 02-相关问题

    undefined 与 null 的区别? undefined :代表定义未赋值 null :null 定义并赋值...

  • 随堂笔记

    undefined与null typeof undefined === 'undefined' typeof nu...

  • TypeScript 基础语法

    1、void 与 undefined和 null 与 void的区别是,undefined 和 null是所有类...

  • JS杂记

    1、Undefined 与 Null 的区别 Undefined 与 null 的值相等,但类型不相等。在js中,...

  • null与undefined

    undefined与null转换为布尔值都为false;null 表示一个“无”的对象,转为数值时为0;undef...

  • null 与 undefined

    undefined值是派生自null值 undefined:声明一个变量但未初始化,这个变量的值就自动被赋予und...

  • null与undefined

    一、相似性在JavaScript中,将一个变量赋值为undefined或null,老实说,几乎没区别。 上面代码中...

  • null 与 undefined

    null 表示一个对象的值是空值,而undefined 表示一个对象是没有被赋初值的。 好吧,这并没什么用。 按照...

  • undefined与null

    1.Undefined Undefined 类型只有一个值,即undefined。在使用var 声明变量但未对其初...

  • undefined 与 null

    undefined 与 null 都是 JavaScript 的基本数据类型,在转换为 Boolean 类型时也都...

网友评论

      本文标题:null与undefined

      本文链接:https://www.haomeiwen.com/subject/sxtjqxtx.html