`
onedear
  • 浏览: 69873 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

javascript中undefined , null , "" , 0 的逻辑值

阅读更多
最近有个问题一直困扰我,今天终于解决了,直接说原理吧
var time = "" ;
time = 0 ;
if(time == "")
    alert("true");
上述代码,会alert true么,实际上是会的。
查了书籍<悟透javascript>后,里面有详细解释:
undefined , null , "" , 0 这四个值转换为逻辑值时就是false,其他所有东西转换逻辑值都是true,
所以上述代码一步一步分析就是:
var time = "" ;  //等同于false
time = 0 ;    //等同于false
if(time == "")     //false == false
    alert("true");

再深入一点,
"123" == 123   //true
"0123" == 0123 //false 因为0123默认是八进制数
"123" === 123 //false ,值相同,但类型不同

这里===是全等的意思,数据值与数据类型都必须相等才为true!!

javascript弱类型定义很灵活,但一旦代码不严谨就会花上一两天的时间慢慢调试javascript。
我靠!
2
0
分享到:
评论

相关推荐

    javascript 中null和undefined区分和比较

    在JavaScript编程语言中,`null`和`undefined`是两种非常重要的值,它们在很多情况下容易引起混淆。本文将深入探讨两者之间的区别和比较。 首先,`undefined`是一种特殊的值,它代表变量已经被声明但没有赋值。在...

    JS 中如何判断 undefined null.rar

    在JavaScript(JS)编程中,`undefined` 和 `null` 是两种不同的特殊值,它们各自表示不同的含义。理解和正确地判断这两个值对于编写健壮的JavaScript代码至关重要。在这篇文章中,我们将深入探讨如何在JavaScript中...

    JavaScript中Null与Undefined的区别解析

    在JavaScript编程语言中,Null和Undefined是两种不同的原始值,它们在特定场景下有特定的含义,有时也会引起初学者的困惑。理解这两者之间的差异是编写健壮JavaScript代码的关键。 首先,Undefined类型是一个特殊的...

    Javascript类型系统之undefined和null浅析_.docx

    JavaScript 类型系统中的 `undefined` 和 `null` 是两种特殊的原始值,它们分别代表不同的概念。`undefined` 主要用于表示变量已经声明但未被赋值的情况,而 `null` 则是一个特意设置的值,通常用来表示一个“空”的...

    javascript类型系统--undefined和null全面了解_.docx

    JavaScript 类型系统中的 `undefined` 和 `null` 是两种特殊的原始值,它们分别代表不同的概念。在 JavaScript 中,每个变量都有一个类型,当变量未初始化或引用的对象不存在时,就会出现 `undefined` 或 `null`。 ...

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

    在JavaScript中,`false`、`0`、`null`、`undefined`和空字符串`""`是五个特殊的值,它们在编程中扮演着不同的角色。理解它们的类型、等价性和在条件语句中的行为是至关重要的。 首先,让我们看看它们的类型: - `...

    javascript中undefined与null的区别

    在JavaScript编程语言中,`undefined` 和 `null` 是两种不同的原始类型,它们虽然在某些情况下表现出相似的行为,但有着本质的区别。理解这两者的差异对于编写健壮的JavaScript代码至关重要。 首先,`undefined` 和...

    JavaScript中的null和undefined用法解析

    在逻辑判断中,无论是 `null` 还是 `undefined`,在 `if` 语句中都会被视为 falsy 值,这意味着它们在条件表达式中都会导致条件为假: ```javascript var variable; if (!variable) { console.log('Variable is ...

    JavaScript undefined及null区别实例解析

    在JavaScript编程语言中,`undefined` 和 `null` 是两种特殊的值,它们在某些方面具有相似性,但也存在明显的差异。这两个概念对于理解和编写健壮的JavaScript代码至关重要,特别是对于那些处理变量状态和数据类型的...

    在javascript中,null>=0 为真,null==0却为假,null的值详解

    最后,null === 0中的全等比较不会进行任何类型转换,所以即便它们在某种情况下具有相同的值,它们的类型仍然是不同的(一个是null,另一个是0),因此结果是false。 简单总结来说,JavaScript中的null是一个基本...

    在JavaScript中学习undefined学习总结.doc

    在JavaScript中,`undefined`是一个特殊的值,它代表了一个变量被声明但未被赋值的情况,或者是尝试访问一个对象上不存在的属性时的结果。深入理解`undefined`对于编写健壮的JavaScript代码至关重要。 首先,我们要...

    JavaScript基本类型值-Undefined、Null、Boolean

    在JavaScript中,基本类型值的使用和处理非常重要,了解Undefined、Null和Boolean这三种基本类型值,能够帮助开发者更好地编写逻辑判断和数据验证的代码,为编写高质量的JavaScript程序打下坚实的基础。

    JavaScript中猎取纯正的undefined的方法_.docx

    在JavaScript编程中,正确理解和获取`undefined`值是至关重要的,因为这直接影响到代码的健壮性和可维护性。在某些情况下,我们可能需要确保一个变量确实为`undefined`,而不是其他任何值,以进行有效的条件检查。...

    浅谈JavaScript中null和undefined

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

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

    本文将深入探讨JavaScript中常见的几个概念:`false`、零值(`0`)、`null`、`undefined`以及空字符串(`""`)。这些概念虽然简单,但在实际编程过程中经常导致困惑和错误。 #### 二、类型检测 首先,我们需要了解这些...

    JavaScript面试题和答案

    `NULL`在JavaScript中表示空值,没有特定的值或对象引用。 7. **JavaScript弹出框** - `alert()`: 显示消息框,只有一个“确定”按钮。 - `prompt()`: 显示带有输入框的消息框,用户可以输入数据。 - `confirm...

    Javascript基础教程之比较null和undefined值

    undefined &lt;br /&gt;")}\&lt;/script&gt;&lt;/body&gt;在JavaScript中,`undefined`和`null`是两个特殊的值,它们在很多情况下都用来表示空或者不存在的值,但两者有着本质的区别。 1. `undefined`:当试图访问一个未声明的...

Global site tag (gtag.js) - Google Analytics