把字串轉成數字的 4 種方法

好多好多。

Number.parseInt(str, radix)

最正規的方式,radix 代表用幾進位來解析這個字串(Number 可加可不加):

1
2
3
4
const a = Number.parseInt('123', 10)
const b = Number.parseInt('100', 2)
console.log(a) // 123
console.log(b) // 4

Math.floor(str)

其實 Math.ceil 也可以,但個人覺得 floor 比較直覺:

1
2
const a = Math.floor('123')
console.log(a) // 123

字串 * 1

跟「數字 + 空字串」有異曲同工之妙:

1
2
const a = '123' * 1
console.log(a) // 123

很適合用在你不想用括號包一大串東西的時候:

1
2
let a = '1991 11 7'.split(' ').reduce((acc, elem) => acc + elem, '') * 1
console.log(a) // 19911117

Number(str)

最直覺的做法:

1
2
const a = Number('123')
console.log(a) // 123
mentor-program-day17 怎麼用正則表達式限制連續次數
Your browser is out-of-date!

Update your browser to view this website correctly. Update my browser now

×