js基本数据类型之间的转换


常见的五大基本数据类型:string number boolean null undefined

一、转换为string

var a = 123
var b = true
var c = null
var d = undefined

1.调用toString() 方法

因为null和undefined没有toString()方法,所以,不能通过这样的方式进行转换

 //123  true
 console.log(a.toString(), b.toString())
           

2.通过String()函数

// 123 true null undefined
console.log(String(a), String(b), String(c), String(d))

3.通过+‘’ 隐式转换

// 123 true null undefined
console.log(a+'',b+'',c + '', d + '')

二、转换为number类型

var e = '123'
var e1 = 123.4
var e2 = 0.654321
var f = '123x'
var g = 'x1x2x3'
var h = true
var i = null
var j = undefined

1.使用Number()函数

//含有非数字字符,转换为NaN
// 123 NaN NaN 1 0 NaN
 console.log(Number(e), Number(f), Number(g), Number(h), Number(i), Number(j))

2.使用parseInt()

和Number()的不同
1.对于非字符串类型,先转换为字符串
2.从左向右遍历字符串,直到碰到非数字字符进行“截断”;如果第一个字符就是非数字字符,转换为NaN

parseInt()方法首先查看位置0处的 字符,判断它是否是个有效数字;如果不是,该方法将返回NaN,不再继续执行其他操作。但如果该字符是有效数字,该方法将查看位置1处的字符,进行同样的 测试。这一过程将持续到发现非有效数字的字符为止,此时parseInt()将把该字符之前的字符串转换成数字。

// 123 123 0 123 NaN NaN NaN NaN
console.log(
          parseInt(e),
          parseInt(e1),
          parseInt(e2),
          parseInt(f),
          parseInt(g),
          parseInt(h),
          parseInt(i),
          parseInt(j)
      )

3.parseFloat() 函数

parseFloat(),从位置0开始查看每个字符,直到找到第一个非有效的字符为止,然后把该字 符之前的字符串转换成数字。
不过,对于这个方法来说,第一个出现的小数点是有效字符。如果有两个小数点,第二个小数点将被看作无效的

//123 123.4 0.654321 123 NaN NaN NaN NaN
console.log(
          parseFloat(e),
          parseFloat(e1),
          parseFloat(e2),
          parseFloat(f),
          parseFloat(g),
          parseFloat(h),
          parseFloat(i),
          parseFloat(j)
      )

4.+ 隐式转换

//123 NaN NaN 1 0 NaN
console.log(+a, +f, +g, +h, +i, +j)

三、转换为Boolean

1.通过Boolean()函数

// false false true true
// false true true true
// false false

console.log(Boolean(0), Boolean(NaN), Boolean(1), Boolean(0.12))
console.log(Boolean(''), Boolean('false'), Boolean('0'), Boolean('1'))
console.log(Boolean(null), Boolean(undefined))

2.通过!!取反

// false 
console.log(!!0)

链接: https://www.bbsmax.com/A/kPzON723dx/

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值