我正在尝试用JavaScript解析一个数字,以确定所有类型输入值的2位小数 对于Eg。
input = 631, required output = 631.00, type = float
input = 631.3, required output = 631.30, type = float
input = 631.333, required output = 631.33, type = float
我尝试了以下选项
input = 631
output = parseFloat(input).toFixed(2) // '631.00'
此处类型以字符串形式出现,这不是必需的。
input = 631.3
output = parseFloat(input) // 631.3
我希望它精确到2位小数
我也尝试了num.toPrecision(totalDigits)
,但它需要总数字。
API调用
curl -X POST \
https://www.wepay.in.th/client_api.php \
-H 'cache-control: no-cache' \
-H 'content-type: application/x-www-form-urlencoded' \
-d 'username=xxxxx&password=xxxxxx&json=true&resp_url=https%3A%2F%2Fapi.witpay.co.th%2Fproccesswepay&pay_to_ref3=&pay_to_barcode1=&type=mtopup&pay_to_company=12CALL&pay_to_ref2=&pay_to_ref1=0929418926&dest_ref=34&pay_to_amount=10.00'
nodeJS中的API调用
const params = {
dest_ref: client_ref,
pay_to_company: serviceCode,
pay_to_amount: parseFloat(amount).toFixed(2),
pay_to_ref1: payToRef1,
}
request({
baseUrl,
url: '/client_api.php', // URL to hit
method: 'POST',
form: params,
headers: [{
name: 'content-type',
value: 'application/x-www-form-urlencoded',
}],
}, (error, response, body) => {
// handle response and error
})
PS:这是第三方API所需的格式,因此无法更改。
答案 0 :(得分:0)
parseFloat(输入).toFixed(2)是一种完美的方法,您将始终将浮点数的数据类型视为字符串,因为javascript仅支持下面提到的原始数据类型:
浮点数可以表示为数字类型,但正如您所说,它们没有任何用处,因为当您尝试将它们转换为数字时,它将给出与的 parseFloat 即可。