对js中null、undefined、NaN等值和数据类型的理解

javascript中的数据类型共有null、undefined、number、string、boolean、object六种。其中前五种是基本数据类型,

object为引用类型包括array、function等。

首先测试各种值的类型

var a1; 
var a2 = true; 
var a3 = 0; 
var a4 = "Hello"; 
var a5 = new Object(); 
var a6 = null; 
var a7 = NaN; 
var a8 = undefined; 
alert(typeof a); //显示"undefined" 
alert(typeof a1); //显示"undefined" 
alert(typeof a2); //显示"boolean" 
alert(typeof a3); //显示"number" 
alert(typeof a4); //显示"string" 
alert(typeof a5); //显示"object" 
alert(typeof a6); //显示"object" 
alert(typeof a7); //显示"number" 
alert(typeof a8); //显示"undefined"

由上可见未定义的变量类型为undefined,NaN的类型为number,null的类型为object。我们再进行比较运算测试,

var a1;
var a2 = null; 
var a3 = NaN;
var a4 = true;
var a5 = "true";
var a6 = 0;
var a7 = undefined;

alert(a1 == a2); //显示"true" 
alert(a1 == a3); //显示"false" 
alert(a2 == a3); //显示"false" 
alert(a3 == a3); //显示"false" 
alert(a2 === a3);//显示“false”
alert(a4 == a5);//显示"false"
alert(a2 == a6);//显示"false"
alert(a1 == a7);//显示"true"
alert(a2 == a7);//显示"true"

可以看到null和undefined等值但不全等,null和0不等值,true和“true”也不等值,NaN与任何值包括自己都不相等。

时间: 2024-10-25 20:34:08

对js中null、undefined、NaN等值和数据类型的理解的相关文章

js中 null, undefined, 0,空字符串,false,不全等比较

null == undefined // true null == ''  // false null == 0 // false null == false // false undefined == '' // false undefined == 0 // false undefined == false // false '' == 0   // true '' == false // true 0 == false // true undefined,null和 0, '', fals

Js的null undefined NaN

<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>第一个javascript计算页面</title></head><body> <script type="text/javascript"> var v1=null; var v2=NaN; var v3=

浅谈JS中的!=、== 、!==、===的用法和区别 JS中Null与Undefined的区别 读取XML文件 获取路径的方式 C#中Cookie,Session,Application的用法与区别? c#反射 抽象工厂

var num = 1;    var str = '1';    var test = 1;    test == num  //true 相同类型 相同值    test === num //true 相同类型 相同值    test !== num //false test与num类型相同,其值也相同, 非运算肯定是false    num == str  //true 把str转换为数字,检查其是否相等.    num != str  //false == 的 非运算    num ==

简述null undefined NaN的异同

1. 类型分析:JS中数据类型有:undefined,boolean,number,string,object,前四种值类型(基础数据类型),object是引用类型 var a1; //undefined var a2=10; //number var a3="hello"; //string var a4=true; //boolean var a5=new Object(); //0bject var a6=NaN; //number var a7=null; //object v

js中由undefined说起

typeof()函数 返回的是字符串,有六种可能:"number"."string"."boolean"."object"."function"."undefined" js中undefined,null,NaN的区别 1.类型分析: js中的数据类型有undefined,boolean,number,string,object等5种,前4种为原始类型,第5种为引用类型. 未定义的值和定

JS中NULL和undifined区别及NULL的作用

1.博客地址:http://www.cnblogs.com/eastday/archive/2010/03/03/1677324.html 2.参考地址2:https://www.zhihu.com/question/35677602/answer/63984217 JS中Null与Undefined的区别 在JavaScript中存在这样两种原始类型:Null与Undefined.这两种类型常常会使JavaScript的开发人员产生疑惑,在什么时候是Null,什么时候又是Undefined?

2016.8.01 &quot;&quot; null undefined NaN 0 特殊比较是true还是false

在javascript的世界里,无论是函数,还是数组,还是对象,亦或是字符串,数字,布尔类型,在这些数据类型中,总有这么几个特立独行,然后造成一些可有可无的讨厌bug. 而这些讨厌bug出现的原因就是由于比较时产生的错误,而且最不易查出错误. 在这里我们整理了这几个特殊数据类型的比较.直接上代码. 上代码前,普及一个知识: ==内容比较,数据类型不比较. ===内容比较,数据类型也比较. 上代码: ==比较代码: // "" null undefined NaN 0 console.l

【转】Javascript 中 null、NaN和undefined的区别

原址:http://www.cnblogs.com/qiantuwuliang/archive/2010/01/12/1645302.html 1.类型分析: js中的数据类型有undefined,boolean,number,string,object等5种,前4种为原始类型,第5种为引用类型. 代码 var a1;var a2 = true;var a3 = 1;var a4 = "Hello";var a5 = new Object();var a6 = null;var a7 

Javascript 中 null、NaN和undefined的区别

1.类型分析: js中的数据类型有undefined,boolean,number,string,object等5种,前4种为原始类型,第5种为引用类型. 代码 Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->var a1;var a2 = true;var a3 = 1;var a4 = "Hello";var a5 = new O