`
kongxiantao
  • 浏览: 112107 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

null 和 undefined

 
阅读更多

原文地址:http://blog.csdn.net/aimingoo/article/details/580336 

 

在JavaScript中,null与undefined曾一度使我迷惑。下面的文字,有利于你更清晰的认知它(或者让你更迷惑):

- null是关键字;undefined是Global对象的一个属性。
- null是对象(空对象, 没有任何属性和方法);undefined是undefined类 型的值。试试下面的代码:

console.log(typeof null);
       console.log(typeof undefined);

- 对象模型中,所有的对象都是Object或其子类的实例,但null对象例外://不明白,求真象
       console.log(null instanceof Object);
- null“等值(==)”于undefined,但不“全等值(===)”于undefined:
        console.log(null == undefined);
       console.log(null === undefined);
- 运算时null与undefined都可以被类型转换为false,但不等值于false:
       console.log(!null, !undefined);//一直都是这么用的
       console.log(null==false);//不明白,求真象
       console.log(undefined==false);//不明白,求真象

 

 

 

undefined跟null的区别,简单总结如下:


1. undefined == null //true
2. undefined === null //false
3. undefined === window.undefined //true
4. undefined === void 0 // true,性能优化技巧:判断一个变量是否是undefined,如果直接跟undefined对比的话,undefined的取值事实上会从window.undefined读取,如果window上有很多属性就会慢一些;而如果用void 0,就可以直接得到undefined,性能会快一些。
5. typeof undefined => ‘undefined’
6. typeof null  => ‘object’

 

 

分享到:
评论

相关推荐

    null和undefined的区别

    null和undefined的区别 null :表示无值;undefined : 表示一个未声明的变量,或已声明但没有赋值的变量,或一个并不存在的对象属性。==运算符将两者看作相等。如果要区分两者,要使用===或typeof运算符。使用if (!...

    JavaScript中的null和undefined用法解析

    null和undefined属于js中两种不同的基本数据类型,都可以表示“没有”,含义非常相似。将一个变量赋值为undefined或null,老实说,语法效果几乎没区别。并且在if语句的判断条件中,它们都会自动转为false,相等...

    js判断undefined类型,undefined,null,NaN的区别

    在 JavaScript 中,undefined、null、NaN 是三个经常被混淆的概念,但它们有着不同的含义和用途。今天,我们将深入探讨这三个概念的区别和应用。 undefined 在 JavaScript 中,undefined 是一个基本数据类型,表示...

    JavaScript中Null与Undefined的区别解析

    JavaScript中Null与Undefined的区别解析主要涉及两种特殊数据类型:Null和Undefined。这两种类型是JavaScript中的原始类型,它们经常会使开发者混淆,尤其是在变量的赋值和比较操作中。本文将通过多个实例,详细解释...

    JavaScript null和undefined区别分析

    总所周知:null == undefined 但是:null !== undefined 那么这两者到底有啥区别呢? 请听俺娓娓道来… null 这是一个对象,但是为空。因为是对象,所以 typeof null 返回 ‘object’ 。 null 是 JavaScript 保留...

    javascript 中null和undefined区分和比较

    JavaScript中的null和undefined是用来表示“无值”的特殊值。在初学者眼里,这两者可能看起来比较相似,因为它们都表示“没有东西”。但是,它们之间有着本质的区别,并且在JavaScript开发中有着不同的使用场景。 ...

    浅谈JavaScript中null和undefined

    在JavaScript编程语言中,null和undefined是两个非常基础且常用的特殊值。尽管它们看起来相似,但它们在JavaScript中有着本质上的区别和各自的应用场景。本文将详细探讨这两个特殊值的相同点和不同点,以及在实际...

    详解javascript中原始数据类型Null和Undefined

    但是,本文将更多聚焦独特的原始数据类型Null和Undefined,是什么让他们如此相似,却又似是而非。 一、理解Null和Undefined 在JavaScript中,null是字面量同时也是语言中的关键字,用来表示无法识别的对象值。...

    JavaScript中的null和undefined区别介绍

    JavaScript中存在2个代表信息不存在的特殊值:null和undefined。个人认为可以从以下角度来理解这两个特殊值之间的区别: 1.null代表有存储信息的容器(比如之前被赋过值的变量),但该容器中的内容为空。 2.undefined...

    JavaScript必知必会(二) null 和undefined

    null  null 表示个“空” ,  使用typeof (null) ;//Object ; 说明他是一个特殊的对象。 ...null 和 undefined 在莫种意义上可以一样 ,比如都可以转换成布尔值,表示 false; null 和 undefi

    JavaScript的null和undefined区别示例介绍

    在JavaScript编程语言中,null和undefined是两个基本的数据类型,它们分别代表了不同的概念和用途。虽然有时它们在某些情况下看起来相似,但它们具有本质上的区别。 首先,我们需要了解JavaScript是一种弱类型(或...

    JavaScript中的null和undefined解析

    在JavaScript编程语言中,null和undefined是两个基本且重要的数据类型,它们通常用来表示无值或者缺值的状态。但是在很多情况下,新手开发者和一些经验丰富的开发者都会对这两个值之间的区别感到困惑。本文将深入...

    javascript权威指南 学习笔记之null和undefined

    javascript之null和undefined</title> </head> <body> [removed] /** ******************null关键字******************** JavaScript中的关键字null是一个特殊的值,它表示“无值”。null常常被...

    JS中判断null的方法分析

    exp 为 undefined 时,也会得到与 null 相同的结果,虽然 null 和 undefined 不一样。 注意:要同时判断 null 和 undefined 时可使用本法。 var exp = null; if (!exp) { alert(is null); } 如果 exp 为 ...

Global site tag (gtag.js) - Google Analytics