美文网首页
JS 里的数据类型转换

JS 里的数据类型转换

作者: gugaga | 来源:发表于2018-12-18 16:16 被阅读0次

    数字转字符串:

    var n = 3;
    n.toString();


    image.png

    以上代码 可以将数字3转换成字符串"3"

    布尔转字符串

    image.png

    以上代码 可以将true转换为字符串"true"

    undefined转字符串

    会报错 找不到未定义的toString()属性


    image.png

    null转字符串

    依然会报错 找不到null的toString()属性


    image.png

    对象转字符串

    虽然不会报错 但是结果并不是我们想看到的那样


    image.png

    隐式转换 与空字符相加

    1 + ''
    1加上空字符串 变成字符串'1'

    true + ''
    true加上空字符串 变成字符串'true'

    undefined + ''
    不会报错 且变成字符串'undefined'

    null + ''
    不会报错 且变成字符串'null'

    对象 + ''


    image.png

    加号的厉害之处是可以把任何都变成字符串
    +左右 任意一边只要有字符串 它就会尝试将另一边也变成字符串

    1+ '1' 等于 (1).toString() + '1' 所以是 '11'

    全局函数String

    和加号的功能一样 都是转成字符串


    image.png

    如何转成Boolean?

    注意

    Boolean(数字0)是false Boolean(空字符串)是false null undefined都是false
    Boolean(空对象)是true Boolean(空数组)是true 只要字符串不是空就是true

    image.png

    !! 一个! 是取反 两个!! 是取反的取反 就是负负得正


    image.png

    总结
    数字中 只有0 和 NaN是false 其他都是true
    字符串中只有空字符串是false 其他都是true
    null false
    undefined false
    对象中都是true

    五个falsy值

    0 NaN null undefined ''(空字符串)

    如何转成number?

    ①parseInt('1',10) 转成整数 === 1
    ②parstFloat('1.23') 转成小数 === 1.23
    ③Number('1') === 1
    ④ '1' + 0 === 1
    ⑤ '1' - 0 === 1
    '1' - 0 任何东西 减0 都可以转成数值

    内存图


    neicun.png

    相关文章

      网友评论

          本文标题:JS 里的数据类型转换

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