美文网首页
JavaScript——数据类型转换

JavaScript——数据类型转换

作者: leown | 来源:发表于2018-11-29 13:07 被阅读7次

    简介

    JavaScript 是一种动态类型语言,变量没有类型限制,可以随时赋予任意值。

    转化为数值

    使用 Number() 方法强制转换

    //数值
    Number(324) // 324
    //字符串
    Number('324') // 324
    Number('324abc') // NaN
    Number('') // 0
    Number('\t\v\r12.34\n') // 12.34
    //布尔值
    Number(true) // 1
    Number(false) // 0
    // undefined 
    Number(undefined) // NaN
    // null
    Number(null) // 0
    // 对象
    Number({}) //NaN
    

    使用 parseInt()、parseFloat() 方法转换

    详情可见此篇中与数值相关的全局方法详细介绍

    使用 ?- 0 方法

    null - 0 //0
    undefined - 0 //NaN
    true - 0 //1
    false - 0 //0
    'a123' - 0 //NaN
    '123a' - 0 //NaN
    '   123  ' - 0 //123
    {} - 0 //-0
    

    使用 +? 方法

    +null //0
    +undefined //NaN
    +true //1
    +false //0
    +'a123' //NaN
    +'   123 ' //123
    +{} //NaN
    +{name:1} //NaN
    

    转化为字符串

    使用 String() 方法强制转换

    String(123) // "123"
    String('abc') // "abc"
    String(true) // "true"
    String(undefined) // "undefined"
    String(null) // "null"
    String({a: 1}) // "[object Object]"
    String([1, 2, 3]) // "1,2,3"
    String(['a', 2, 3]) // "a,2,3"
    

    使用 toString() 方法转换

    (123).toString() //"123"
    (true).toString() //"true"
    (false).toString() //"false"
    ({name:1}).toString() //"[object Object]"
    

    nullundefinedtoString 方法

    使用 ? + '' 方法转换

    123 + '' //"123"
    true + '' //"true"
    false + '' //"false"
    undefined + '' //"undefined"
    null + '' //"null"
    {} + '' //0
    []+'' //""
    ({})+'' //"[object Object]"
    ({name:1}) + '' //"[object Object]"
    

    转化为布尔值

    五个 falsy

    undefined
    null
    0
    NaN
    '' //空字符串
    

    使用 Boolean() 方法强制转换

    Boolean(undefined) // false
    Boolean(null) // false
    Boolean(0) // false
    Boolean(NaN) // false
    Boolean('') // false
    Boolean({}) // true
    Boolean([]) // true
    // 其余为 true
    

    使用 !!? 方法转换

    !!undefined // false
    !!null // false
    !!0 // false
    !!NaN // false
    !!'' // false
    !!{} // true
    !![] // true
    

    相关文章

      网友评论

          本文标题:JavaScript——数据类型转换

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