美文网首页
js等式的理解

js等式的理解

作者: 向前冲冲的蜗牛 | 来源:发表于2017-04-02 16:15 被阅读0次

    js中有==和!=来比较数字和字符串是否相等,但是在js中比较不同类型的值,会产生不同的结果。

    console.log("1"==1)
    返回 true
    console.log(0==false)
    返回true

    这些结果都是为真,原因如下

    js的隐式类型转换

    js属于对类型要求不高的语言,不同于Java,c这种强制形的语言。所以编写js代码的时候,不需要指定数据类型,在js引擎解析代码的时候,将自动转换为“相应的”数据类型——————隐式类型转换

    例如字符串与数字的相连

    moment+1
    返回“moment1”

    字符串“moment”后面加了数字1,形成了字符串“moment1”,是将数字1转换成了字符串“1‘,然后与字符串”moment“相连。

    "1"==true
    返回:true

    (1)当使用==或者!=运算时,在比较的值不是相同类型的时候,js则是将每个值转换为相同的类型---------”转型“
    (2)当使用===的方法则是比较类型和数值是否完全相同————”完全相等“

    "1" === 1
    返回false

    返回 false,因为字符串 "1" 和数字 1 并非具有相同的类型和值。

    0 === false
    返回false

    返回 false,因为数字 0 和布尔值 false 并非具有相同的类型和值。

    相关文章

      网友评论

          本文标题:js等式的理解

          本文链接:https://www.haomeiwen.com/subject/beegottx.html