条带节点任意精度数

时间:2017-10-23 23:29:01

标签: node.js stripe-payments

我正在尝试在Node.js平台上创建一种安全的方式来收取Stripe中的付款。我目前正在使用BigNumber https://github.com/MikeMcl/bignumber.js/来执行我的操作以保持计算的准确性,以确定在线购买的小计和总计,例如

let x = BigNumber(numberOfItems);
let y = BigNumber(costPerItem);
let z = BigNumber(taxRatePerOrderTotal/100);

let costToCharge = x.times(y).plus(x.times(y).times(z))

我担心的是,当我这样做时,我不希望所有漂亮的任意精度十进制算法都浪费掉

costToCharge.toNumber()

将把它改回IEEE764浮点数,从而切断一些精度。然而根据Stripe文档,它需要Number,我不相信有amount属性的字符串版本可以解决问题。

1 个答案:

答案 0 :(得分:1)

Stripe requires integer cents,因此您需要将其乘以100并将其转换为整数。