JavaScript|JavaScript 基本数据类型转换你了解嘛

目录

  • 前言
  • 转换为数字
    • Number(string)方法
    • parseInt(string,radix)
    • parseFloat(string)
    • 隐式转换
  • 转换为字符串
    • toString()
    • String()
    • 隐式转换
  • 转换为布尔值
    • Boolean()
    • 条件语句
    • 隐式转换
  • 总结

    前言 数据类型转换是我们在前端开发中经常遇到的场景,一般而言,在 JavaScript 中类型转换有三种情况:
    • 转换为数字(调用 Number(),parseInt(),parseFloat()方法)
    • 转换为字符串(调用.toString()或 String()方法)
    • 转换为布尔值(调用 Boolean()方法)
    需要注意的是:null、undefined 没有.toString() 方法。

    转换为数字
    Number(string) 方法
    Number() 可以把任意值转换成数字,如果要转换的目标对象(一般是字符串)中有不是数字的值,则会返回 NaN
    Number('1')// 1Number(true)// 1Number('123s') // NaNNumber({})//NaN


    parseInt(string, radix)
    解析一个字符串并返回指定基数的十进制整数,radix 是 2-36 之间的整数,表示被解析字符串的基数。
    parseInt('2') //2parseInt('2',10) // 2parseInt('2',2)// NaNparseInt('a123')// NaN如果第一个字符不是数字或者符号就返回NaNparseInt('123a')// 123


    parseFloat(string)
    解析一个参数并返回一个浮点数。
    parseFloat('123a') //123parseFloat('123a.01') //123parseFloat('123.01') //123.01parseFloat('123.01.1') //123.01




    隐式转换
    let str = '123'-str// -123str+1 // '1231'+str+1 // 124let res = str - 1 //122let str = '123'-str // -123str+1 // '1231'+str+1 // 124let res = str - 1 //122


    转换为字符串
    toString()
    将目标对象转换为字符串。
    注意:null,undefined 不能调用。
    Number(123).toString() //'123'[].toString() //''true.toString() //'true'


    String()
    String() 的作用比较强大,它可以将任何传入的值都转为字符串。
    String(123) //'123'String(true) //'true'String([]) //''String(null) //'null'String(undefined) //'undefined'String({}) //'[object Object]'

    隐式转换
    当 + 两边有一个是字符串,另一个是其它类型时,会先把其它类型转换为字符串再进行字符串拼接,返回字符串:
    let a = 1a + '' // '1'


    转换为布尔值
    Boolean()
    Boolean() 方法会将以下值转换为 false:
    • 0
    • “”
    • null
    • undefined
    • NaN
    其余的所有值都会被转换为 true。
    Boolean('') //falseBoolean(0) //falseBoolean(1) //trueBoolean(null) //falseBoolean(undefined) //falseBoolean(NaN) //falseBoolean({}) //trueBoolean([]) //true


    条件语句
    在条件语句中,我们一般不会主动进行布尔转换。
    let aif(a) {//...//这里a为undefined,会转为false,所以该条件语句内部不会执行}

    隐式转换
    let str = '111'console.log(!!str) // true


    总结 以上就是 JavaScript 基本数据类型转换相关的知识总结,其中最需要注意的是隐式转换。
    【JavaScript|JavaScript 基本数据类型转换你了解嘛】本篇文章就到这里了,希望能够给你带来帮助,也希望您能够多多关注脚本之家的更多内容!

      推荐阅读