nodejs里面如何把整数100变成浮点数100.00 放到请求里面?
有这么这个api
curl --request PATCH \
--url https://test.com/api/v1/money \
--header 'content-type: application/json' \
--data '{
"amount": 100.00
}'
- amount只支持带有两位小数点的数字
- 这样是不行的🙅♂️ { “amount”: “100.00” }
- 这样也是不行的🙅 { “amount”: 100 }
- 这样是可以的👌 { “amount”: 100.01 }
问题:
- 在请求api的时候如何把 100 变成 100.00 ?
13 回复
toFixed(2)?
@CaanDoll toFixed(2)出来的结果是{ “amount”: “100.00” } 所以也是不行
不可能的任务
结论: 不可能
测试:
> 100.00
100
只能手动拼字符串发了
感谢各位,我也觉得是做不到的
@CNBlackJ 可以做到,json 的本质是字符串,只要你自己拼就可以了。
let data = `{
"amount": ${amount.toFixed(2)}
}`
但是服务器端接收呢?一般情况下末尾的零也会丢失的。
JSON.parse(`{
"amount": 100.00
}`);
// 结果是 {amount: 100}
除非服务器端也自己解析,但是 100 === 100.00
这两个值是全等的,等价的,所以完全没有必要用不同的表示方式来传输多余的字节。
@justjavac 👍按照这个思路可以拼装到我需要的一组数据
let data = `{
"amount": ${amount.toFixed(2)}
}`
@CNBlackJ 不知道为什么会有这么奇怪的需求,因为后端接收之后还是 100,并没有后面的零
@justjavac api只接收这样的数据格式 🤦️
@CNBlackJ (⊙﹏⊙)