首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

JavaScript中null和undefined比较和区别

js中如果变量这么定义的话var flag=null,这个时候flag就是个空值,将其打印出来也是null。...而undefined则表示未定义,例如:var flag;然后将flag打印出来,此时flag的结果就是undefined。...+(flag1=="undefined")); 运行结果为: flag1:undefined flag2:null flag1==null?true flag1==undefined?...false 这里需要解释一下的是==于===的区别: 1、对于string,number等基础类型,==和===是有区别的 1)不同类型间比较,==之比较“转化成同一类型后的值”看“值”是否相等,=...==如果类型不同,其结果就是不等 2)同类型比较,直接进行“值”比较,两者结果一样 2、对于Array,Object等高级类型,==和===是没有区别的 进行“指针地址”比较 3、基础类型与高级类型

1.1K80
您找到你想要的搜索结果了吗?
是的
没有找到

null == undefined ?

最近在看《JavaScript高级程序设计》一书,书中讲到相等操作符(==)时说,要比较相等性之前,不能将 null 和 undefined 转换成其他任何值,但要记住 null == undefined...【4】使用 void 对表达式求值 void 0 ; // undefined void false; //undefined void []; //undefined void null; //undefined...因此,在JS中对这类值访问属性时,都会得到异常的结果: ?...不要试图通过转换数据类型来解释这个结论,因为: Number(null); // 0 Number(undefined); // NaN //在比较相等性之前,null 没有被转换为其他类型 null...== 0 ; //false 但 === 会返回 false ,因为全等操作 === 在比较相等性的时候,不会主动转换分项的数据类型,而两者又不属于同一种类型: undefined === null;

2.4K20

null 和 undefined

二. null和undefined: alert(undefined == null); // 返回 true 对于 undefined 和 null 的相等性测试,返回 true,如上图。...但是,这两者差别很大,之所以要设置两个值,让我们从历史原因说起吧 1)历史原因: 1995年js诞生时,最初像Java一样,只设置了 null 作为表示”无”的值。...= null){ //对abc执行某些操作 } ② undefined undefined 是基本数据类型之一,值仅有一个,即为 undefined。...var x = f(); var exp = undefined; 8x // undefined ③ 如何检测某个变量是 undefined: 错误的用法: if(abc==undefined)...// 正如上面所说,js规定用`==` 判断时,null和undefined是等同的 正确的用法: if (typeof(abc) `==` "undefined") 或者最简单的办法: if(abc

1.7K40

undefined vs null

❞ 简明扼要 在JS中,存在两个空值 1. undefined 2. null Object.prototype不存在原型对象且值为null 假值:通过Boolean(X)强制类型转换后的值为false...但是,在JS中,存在两个空值 1. undefined 2. null 1. undefined vs null 一般情况下,这两个值在使用上都可以互换使用。只有在一些细微的方面存在差别。...我们可以从使用上对其进行分类 undefined: 是语言层面上使用的非值(定义一个变量,但未赋值,此时该变量会被JS引擎自动赋为undefined) null: 蓄意控制变量的值 2....和 null 没有任何属性 undefined和null是JS中仅有的两个变量:当试图读取它们的属性,会得到一个错误。...read property 'foo' of null getFoo(true) // undefined getFoo({}) // undefined 如果,继续深究的话,其实,这涉及到JS

1K10
领券