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') // 1 Number(true) // 1 Number('123s') // NaN Number({}) //NaN parseInt(string, radix)

解析一个字符串并返回指定基数的十进制整数,radix 是 2-36 之间的整数,表示被解析字符串的基数。

parseInt('2') //2 parseInt('2',10) // 2 parseInt('2',2) // NaN parseInt('a123') // NaN 如果第一个字符不是数字或者符号就返回NaN parseInt('123a') // 123 parseFloat(string)

解析一个参数并返回一个浮点数。

parseFloat('123a')//123 parseFloat('123a.01')//123 parseFloat('123.01')//123.01 parseFloat('123.01.1')//123.01 隐式转换 let str = '123'-str// -123str+1 // '1231'+str+1 // 124let res = str - 1 //122let str = '123' -str// -123 str+1 // '1231' +str+1 // 124 let 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 = 1 a + ''// '1' 转换为布尔值 Boolean()

Boolean() 方法会将以下值转换为 false:

0

“”

null

undefined

NaN

其余的所有值都会被转换为 true。

Boolean('') //false Boolean(0) //false Boolean(1) //true Boolean(null) //false Boolean(undefined) //false Boolean(NaN) //false Boolean({}) //true Boolean([]) //true 条件语句

在条件语句中,我们一般不会主动进行布尔转换。

let a if(a) { //... //这里a为undefined,会转为false,所以该条件语句内部不会执行 } 隐式转换 let str = '111' console.log(!!str) // true 总结

以上就是 JavaScript 基本数据类型转换相关的知识总结,其中最需要注意的是隐式转换。

本篇文章就到这里了,希望能够给你带来帮助,也希望您能够多多关注易知道(ezd.cc)的更多内容!

推荐阅读