Rumah > Soal Jawab > teks badan
Semasa berniaga baru-baru ini, saya menghadapi masalah menarik:
Untuk mengira wang dengan tepat, pelayan menukar wang kepada unit (1 yuan = 100)
Ke bahagian hadapan, anda perlu menukarnya kepada format wang 159 => 1.59 yuan
Selepas melihat projek, kaedah pelaksanaan adalah menggunakan tofixed, tetapi terdapat pepijat.
Permintaan
159 -> 1.59元
1500 -> 15.00 元
88 -> 0.88元
8 -> 0.08元
Selain itu, kadangkala format paparan adalah (yuan lebih besar, sen lebih kecil)
PHP中文网2017-07-05 11:04:21
Contoh mudah adalah seperti berikut:
function convertUnit (value) {
// bug 常见出现自 parseInt 未指定进制
return parseFloat(parseInt(value, 10) / 100).toFixed(2) + '元'
}
Kes ujian mudah:
> parseFloat(169 / 100).toFixed(2)
'1.69'
> parseFloat(8 / 100).toFixed(2)
'0.08'
> parseFloat(88 / 100).toFixed(2)
'0.88'
> parseFloat(1500 / 100).toFixed(2)
'15.00'
三叔2017-07-05 11:04:21
function toPrice(d){
return `00${d}`.replace(/(.*)(\d{2})/g,'\.元').replace(/0*([1-9]*\d\..*)/,'')
}