zoukankan      html  css  js  c++  java
  • JavaScript 类型转换

    JavaScript 类型转换


    Number() 转换为数字, String() 转换为字符串, Boolean() 转化为布尔值。

    JavaScript 数据类型

    在 JavaScript 中有 6 种不同的数据类型:

    • string
    • number
    • boolean
    • object
    • function
    • symbol

    3 种对象类型:

    • Object
    • Date
    • Array

    2 个不包含任何值的数据类型:

    • null
    • undefined

    constructor 属性

    constructor 属性返回所有 JavaScript 变量的构造函数。

    实例

    "John".constructor                 // 返回函数 String()  { [native code] }
    (3.14).constructor                 // 返回函数 Number()  { [native code] }
    false.constructor                  // 返回函数 Boolean() { [native code] }
    [1,2,3,4].constructor              // 返回函数 Array()   { [native code] }
    {name:'John', age:34}.constructor  // 返回函数 Object()  { [native code] }
    new Date().constructor             // 返回函数 Date()    { [native code] }
    function () {}.constructor         // 返回函数 Function(){ [native code] }

    你可以使用 constructor 属性来查看对象是否为数组 (包含字符串 "Array"):

    实例

    function isArray(myArray) {
        return myArray.constructor.toString().indexOf("Array") > -1;
    }

    你可以使用 constructor 属性来查看对象是否为日期 (包含字符串 "Date"):

    实例

    function isDate(myDate) {
        return myDate.constructor.toString().indexOf("Date") > -1;
    }

    将数字转换为字符串

    全局方法 String() 可以将数字转换为字符串。

    该方法可用于任何类型的数字,字母,变量,表达式:

    实例

    String(x)         // 将变量 x 转换为字符串并返回
    String(123)       // 将数字 123 转换为字符串并返回
    String(100 + 23)  // 将数字表达式转换为字符串并返回

    将字符串转换为数字

    全局方法 Number() 可以将字符串转换为数字。

    字符串包含数字(如 "3.14") 转换为数字 (如 3.14).

    空字符串转换为 0。

    其他的字符串会转换为 NaN (不是个数字)。

    Number("3.14")    // 返回 3.14
    Number(" ")       // 返回 0 
    Number("")        // 返回 0
    Number("99 88")   // 返回 NaN

    下表展示了使用不同的数值转换为数字(Number), 字符串(String), 布尔值(Boolean):

    原始值转换为数字转换为字符串转换为布尔值
    false 0 "false" false
    true 1 "true" true
    0 0 "0" false
    1 1 "1" true
    "0" 0 "0" true
    "000" 0 "000" true
    "1" 1 "1" true
    NaN NaN "NaN" false
    Infinity Infinity "Infinity" true
    -Infinity -Infinity "-Infinity" true
    "" 0 "" false
    "20" 20 "20" true
    "Runoob" NaN "Runoob" true
    [ ] 0 "" true
    [20] 20 "20" true
    [10,20] NaN "10,20" true
    ["Runoob"] NaN "Runoob" true
    ["Runoob","Google"] NaN "Runoob,Google" true
    function(){} NaN "function(){}" true
    { } NaN "[object Object]" true
    null 0 "null" false
    undefined NaN "undefined" false
  • 相关阅读:
    常用安卓开发技巧汇总
    安卓开发30:AsyncTask的用法
    JBoss AS7 快速配置
    抓包 把笔记本改造成无线路由器 —— 手机抓包牛刀小试
    Android系统手机端抓包方法
    ApkTool反编译apk,去除广告或者汉化后重新打包apk,并签名
    Android中如何像 360 一样优雅的杀死后台Service而不启动
    android service 的各种用法(IPC、AIDL)
    Android shell 下 busybox,clear,tcpdump、、众多命令的移植
    Servlet3.0中Servlet的使用
  • 原文地址:https://www.cnblogs.com/gengyufei/p/12594829.html
Copyright © 2011-2022 走看看