本文整理汇总了TypeScript中bignumber.js.BigNumber.plus方法的典型用法代码示例。如果您正苦于以下问题:TypeScript js.BigNumber.plus方法的具体用法?TypeScript js.BigNumber.plus怎么用?TypeScript js.BigNumber.plus使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类bignumber.js.BigNumber
的用法示例。
在下文中一共展示了js.BigNumber.plus方法的5个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的TypeScript代码示例。
示例1: addSpentAmounts
addSpentAmounts(local: BigNumber, foreign: BigNumber) {
let that: ProjectCategory = this.merge({
spentLocal: this.spentLocal.plus(local),
spentForeign: this.spentForeign.plus(foreign)
});
let overshoot = this.limitForeign.lessThan(that.spentForeign);
return that.merge({
overshoot: overshoot
});
}
示例2: calculateBondSize
const stakeResults = _.map(stakeRows.payouts, (payout: PayoutRow<BigNumber>): StakeDetails<BigNumber> => {
const stakeCompletedRow = stakeCompletedByPayout[payout.payoutId];
const stakeCurrentRow = stakeCurrentByPayout[payout.payoutId];
const accountStakeCompletedRow = accountStakeCompletedByPayout[payout.payoutId];
const accountStakeCurrentRow = accountStakeCurrentByPayout[payout.payoutId];
const stakeCompleted: BigNumber = !stakeCompletedRow ? ZERO : stakeCompletedRow.amountStaked;
const stakeCurrentOnPayout: BigNumber = !stakeCurrentRow ? ZERO : stakeCurrentRow.amountStaked;
let currentAmounts: StakeSizes<BigNumber> = {};
const accountStakeCompleted = accountStakeCompletedRow ? accountStakeCompletedRow.amountStaked : ZERO;
if (payout.tentativeWinning !== 1 && isActiveMarketState(marketRow.reportingState)) {
let bondSizeCurrent: BigNumber;
let stakeCurrent: BigNumber;
let accountStakeCurrent: BigNumber;
if (!stakeCurrentRow) {
bondSizeCurrent = calculateBondSize(totalCompletedStakeOnAllPayouts, stakeCompleted);
stakeCurrent = ZERO;
accountStakeCurrent = ZERO;
} else {
bondSizeCurrent = stakeCurrentRow.size;
stakeCurrent = stakeCurrentRow.amountStaked;
accountStakeCurrent = accountStakeCurrentRow ? accountStakeCurrentRow.amountStaked : ZERO;
}
currentAmounts = {
bondSizeCurrent,
stakeCurrent,
accountStakeCurrent,
accountStakeTotal: accountStakeCurrent.plus(accountStakeCompleted),
stakeRemaining: bondSizeCurrent.minus(stakeCurrent),
bondSizeTotal: bondSizeCurrent.plus(stakeCompleted),
};
}
currentAmounts.accountStakeCompleted = accountStakeCompleted;
return Object.assign({},
normalizePayouts(payout),
currentAmounts,
{
stakeCurrent: stakeCurrentOnPayout,
stakeCompleted,
tentativeWinning: !!payout.tentativeWinning,
},
);
});
示例3: it
it("should transfer tokens of specified amount from payer", async () => {
await expect(
principalToken.balanceOf.callAsync(PAYER),
).to.eventually.bignumber.equal(payerBalanceBefore.minus(Units.ether(1.1)));
await expect(
principalToken.balanceOf.callAsync(BENEFICIARY_1),
).to.eventually.bignumber.equal(
beneficiaryBalanceBefore.plus(Units.ether(1.1)),
);
});
示例4: addLastExpenseInternal
addLastExpenseInternal(expense: Expense): Project {
let that: Project = this;
let fulfilledAmount = new BigNumber(0);
let iteration = 0;
while (fulfilledAmount.lessThan(expense.localAmount)) {
iteration += 1;
let pos = findFirstNonEmptyIncome(that.incomes);
let income = that.incomes.get(pos);
let neededValue = expense.localAmount.minus(fulfilledAmount);
let valueToTake = neededValue;
let availableValue = income.localAmount.minus(income.spentLocalAmount);
if (pos < that.incomes.size - 1) {
// If this is not the last possible income, then cap fulfillment amount
// to this income.
valueToTake = Utils.bigMin(neededValue, availableValue);
} else if (availableValue.lessThan(neededValue)) {
expense = expense.set('overshoot', true);
}
that = that.merge({
incomes: that.incomes.set(pos, income.spendInLocalCurrency(valueToTake))
});
expense = expense.merge({
foreignAmount:
expense.foreignAmount.plus(valueToTake.dividedBy(income.exchangeRate)),
multiPart: iteration > 1
});
fulfilledAmount = fulfilledAmount.plus(valueToTake);
}
let exchangeRate = expense.localAmount.dividedBy(expense.foreignAmount);
return that.merge({
expenses: that.expenses.push(
expense.set('exchangeRate', exchangeRate)
)
});
}
示例5:
volume: _.reduce(trades, (totalVolume: BigNumber, tradeRow: MarketPriceHistoryRow) => totalVolume.plus(volumeForTrade({
marketMinPrice: marketsRow.minPrice,
marketMaxPrice: marketsRow.maxPrice,
numCreatorTokens: tradeRow.numCreatorTokens,
numCreatorShares: tradeRow.numCreatorShares,
numFillerTokens: tradeRow.numFillerTokens,
numFillerShares: tradeRow.numFillerShares,
})), ZERO).toString(),