首页 文章

JavaScript中==和===之间的区别[重复]

提问于
浏览
1464

可能重复:Javascript === vs ==:我使用哪个“相等”运算符是否重要?

JavaScript中的 ===== 有什么区别?我也见过 !=!== 运算符 . 还有更多这样的运营商吗?

2 回答

  • 1815

    ===!== 是严格的比较运算符:

    JavaScript具有严格和类型转换等式比较 . 对于严格相等,被比较的对象必须具有相同的类型和:当两个字符串在相应位置具有相同的字符序列,相同的长度和相同的字符时,它们严格相等 . 当两个数字在数值上相等(具有相同的数值)时,两个数字严格相等 . NaN不等于任何东西,包括NaN . 正负零彼此相等 . 如果两个布尔操作数都为真或两者都为假,则它们严格相等 . 如果两个对象引用相同的Object,则它们严格相等 . 空和未定义类型是==(但不是===) . [即(Null == Undefined)为true但是(Null === Undefined)为false]

    Comparison Operators - MDC

  • 1104

    看看这里:http://longgoldenears.blogspot.com/2007/09/triple-equals-in-javascript.html

    3个等号表示“没有类型强制的平等” . 使用三等于,值也必须在类型上相等 .

    0 == false   // true
    0 === false  // false, because they are of a different type
    1 == "1"     // true, automatic type conversion for value only
    1 === "1"    // false, because they are of a different type
    null == undefined // true
    null === undefined // false
    '0' == false // true
    '0' === false // false
    

相关问题