如何计算javascript

时间:2017-08-03 07:30:27

标签: javascript

我需要按小时计算工作量,我花了一个小时100卢比意味着,我的总金额将100就像我需要计算javascript中的小时数一样。示例代码

var timeSpent = 1:25:58, //1:26
    amountPerhours = 100;

如何根据javascript中的工作时间计算总金额

4 个答案:

答案 0 :(得分:2)

您可以首先获得时间的十进制表示,然后将其与小时因子相乘。稍后你可能会添加一些修复。

var timeSpent = '1:25:58',
    amountPerHour = 100,
    time = timeSpent
        .split(':')
        .reduce((r, a, i) => r + a * Math.pow(60, -i), 0),
    result = time * amountPerHour;
    
console.log('time', time);
console.log('amount', result.toFixed(2));

答案 1 :(得分:0)

尝试拆分输入变量:

{
    provide: APP_INITIALIZER,
    useFactory: [configLoader, websocketLoader],
    multi: true,
    deps: [ConfigService, WebsocketService]
}

答案 2 :(得分:0)

试试这个:

function getAmount(timeSpent) {
    var amountPerhour = 100;
    var time = timeSpent.split(":");
    var hours = time[0];
    var mins = time[1];
    var secs = time[2];

    if (secs != undefined && secs > 29) {
        mins++;
    }
    var amount = (+hours + +mins/60) * amountPerhour;
    return parseFloat(amount).toFixed(2);
}

console.log(getAmount("1:25:58"));

答案 3 :(得分:0)

可以在一行中轻松计算金额。请参阅以下代码段。

var time = "1:25:30";
var amount = time.split(":")
    .map((a,b) => a/(60**b))
    .reduce((a,b) => a+b)
    .toFixed(2) * 100;
console.log(amount);