`
mylftnt
  • 浏览: 26501 次
  • 性别: Icon_minigender_1
  • 来自: 成都
文章分类
社区版块
存档分类
最新评论

JS学习之一(null、 undefined、 0、 false、 "")

 
阅读更多

JavaScript 这类弱类型的语言,在判断相等方面很麻烦,明明不是一个东西,却相等了。这里通过示例

展示 null、 undefined、 0、 false、 "" 的相等情况。
例一:

<script type="text/javascript">
var arr = [ null, undefined, 0, false, "" ];
var str = "";
for ( var i = 0; i < arr.length; i++) {
for ( var j = i + 1; j < arr.length; j++) {
if (arr[i] == arr[j]) {
str += arr[i] + " == " + ((j != 4) ? arr[j] : "/" / "") + "/n";
} else {
str += arr[i] + " != " + ((j != 4) ? arr[j] : "/" / "") + "/n";
}
}
}
</script>


结果
null == undefined
null != 0
null != false
null != ""
undefined != 0
undefined != false
undefined != ""
0 == false
0 == ""
false == ""
可以看出 null 与 undefined 是一伙的;而 0、false、"" 又是另外一伙的。
怎么排除干扰?
由于不同的数据类型之间都等起来了,要排除干扰,比如让 0 不等于 "",怎么办呢?用恒等 === 或

!==。这样他们就谁都不等于谁了。
例二:

<script type="text/javascript">
if (false == '') {
document.write('他们相等')
} else {
document.write('他们不相等')
} //他们相等
if (false == null) {
document.write('他们相等')
} else {
document.write('他们不相等')
} //他们不相等
</script>


比如:String s="" 那么在内存上面已经分配了内存空间的,里面存了信息的,是一个空格键的编码.
String s=null 内存上面没有分配空间.
null 和 " " 这两种用法,
一个表示的是空, null还可以用在对象上面.一个表示的是没有任何字符串.
“ ”只有用在字符串上面,java等其他语言里面


分享到:
评论

相关推荐

    区分JS中的undefined,null,&quot;&quot;,0和false

    区分JS中的undefined,null,"",0和false

    区分JS中的undefined,null,,0和false

    在程序语言中定义的各种各样的数据类型中,我们都会为其定义一个”空值”或”假值”,比如对象类型的空值null,.NET Framework中数据库字段的空值DBNull,boolean类型的假值false等等。在JavaScript中也有很多种的...

    JavaScript中undefined和null的区别

    JavaScript中undefined和null的区别 JavaScript两个表示”无”的值:undefined和null。我在平时只是null用的多一点,undefined只是在报错中经常遇到。下面针对这两个数据类型的异同做一下详细的比较。 1.undefined和...

    JavaScript中的null和undefined用法解析

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

    Javascript中的false、0、null、undefined和空字符串对象[归类].pdf

    Javascript中的false、0、null、undefined和空字符串对象[归类].pdf

    有关JS中的0,null,undefined,[],{},””””,false之间的关系

    0与false 0==false true 0与”: 0==” true  0与[]: 0==[] true  0与NaN: 0==NaN false 0与undefined 0==undefined false 0与null 0==null false  0与{} 0=={} false ”空值与一些值的比较 '' == false ...

    JavaScript undefined及null区别实例解析

    在JavaScript中,将一个变量赋值为undefined或null,老实说,几乎没区别。 var a = undefined; var a = null; 上面代码中,a变量分别被赋值为undefined和null,这两种写法几乎等价。 undefined和null在if语句中,...

    javascript中的undefined 与 null 的区别 补充篇

    之前软件开发网发不过类似的文章JavaScript null和undefined区别分析JavaScript Undefined,Null类型和NaN值区别先说说undefined: Javascript中的变量是弱类型的(关于这个我想就不用我多解释啦), 所以声明变量的...

    JS中判断null的方法分析

    本文实例讲述了JS中判断null的方法。分享给大家供大家参考,具体如下: 以下是不正确的方法: var exp = null; if (exp == null) ...如果 exp 为 undefined,或数字零,或 false,也会得到与 null 相同的结

    详解JavaScript中undefined与null的区别

    一、相似性在JavaScript中,将一个变量赋值为undefined或null,老实说,几乎没区别。 代码如下:var a = undefined;var a = null; 上面代码中,a变量分别被赋值为undefined和null,这两种写法几乎等价。undefined和...

    javascript中undefined与null的区别

    在JavaScript中,将一个变量赋值为undefined或null,老实说,几乎没区别。 var a = undefined; var a = null; 上面代码中,a变量分别被赋值为undefined和null,这两种写法几乎等价。 undefined和null在if语句中,...

    JavaScript typeof, null, 和 undefined

    JavaScript typeof, null, 和 undefined JavaScript typeof, null, undefined, valueOf()。 typeof 操作符 你可以使用 typeof 操作符来检测变量的数据类型。 实例 typeof "John" // 返回 string typeof 3.14...

    有关JS中的0,null,undefined,[],{},'''''''',false之间的关系

    主要介绍了有关JS中的0,null,undefined,[],{},'',false之间的关系,需要的朋友可以参考下

    JavaScript Undefined,Null类型和NaN值区别

    一 Undefined 类型 只有一种值 undefined 以下三种情况typeof 返回类型为undefined 1. 当变量未初始化时 2. 变量未定义时 3. 函数无明确返回值时(函数没有返回值时返回的都是undefined) undefined 并不等同于...

    JavaScript必知必会(二) null 和undefined

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

    老生常谈javascript中逻辑运算符&&和||的返回值问题

    NaN null undefined 0 false; 所以3||5返回的是3; 如果||左右两边都是以上类型的值时,会返回最后一个 如 var a=0||null||undefined则a返回的值是undefined; 其次是&&的返回值问题: &&的返回值会返回最早遇到以下...

    Javascript 中的false零值nullundefined和空字符串对象

    Javascript 中的false 、零值、null、undefined和空字符串对象的区别

    JavaScript的null和undefined区别示例介绍

    先说说undefined: Javascript中的变量是弱类型的... 在Javascript中对于这种生命后没有给定初始值的变量,就给他一个undefined。不过前提是这个变量必须已经声明,如果对于没有声明过的标识符,就会出错。看看下面的代

    javascript学习笔记.docx

    、 confirm()、 prompt()之一。 5) 时间间隔方法为: setInterval()、 cleraInterval() 。 6) onerror属性指明错误处理的方式。 navigator属性包含Web浏览器总体信息。 screen属性包含显示器的信息。 7) 打开窗口用...

    javascript不同类型数据之间的运算的转换方法

    在js中有5种基础类型数据:string、number、boolean、null、undefined,其中,常用于计算或者比较的类型是前面三种。 基础数据之间的转换 其它类型转化数字 原始数据类型 目标类型Number undefined NaN null 0 ...

Global site tag (gtag.js) - Google Analytics