2
我想使用正則表達式將數字轉換爲0(如果傳遞的值是整數)或30(如果傳遞的值是浮點數)。使用正則表達式轉換數
沒有正則表達式它很容易:
const someNumber = Number.isInteger(16.5) ? 0 : 30;
console.log(someNumber); // 30
但如何做到這一點使用正則表達式?
我想使用正則表達式將數字轉換爲0(如果傳遞的值是整數)或30(如果傳遞的值是浮點數)。使用正則表達式轉換數
沒有正則表達式它很容易:
const someNumber = Number.isInteger(16.5) ? 0 : 30;
console.log(someNumber); // 30
但如何做到這一點使用正則表達式?
let someNumber = /\d+\./.test(16.5) ? 30 : 0;
let someNumber2 = /\d+\./.test(16) ? 30 : 0;
console.log(someNumber);
console.log(someNumber2);
僅使用正則表達式替換和類型轉換:
n => Number(n.toString().replace(/^/, "30").replace(/(30)\d+(?:\.\d+)|3(0)\d+/, "$1$2"))
'someNumber = /\./.test(16.5)* 30' – Thomas