在javascript中乘以2个值,其中一个值具有逗号分隔的输入

时间:2014-05-26 09:53:46

标签: javascript

大家好,有些人可以帮助我,我需要使用javascript乘以逗号分隔值,我尝试了以下但是没有给出实际结果

function calculateLinePrice(s, e) {
            var unitPrice = 2,222.00;
            var price = unitPrice.replace(/[^0-9\.,]/g, '')
            var quantity = 10
            if (price != '' && quantity != '') {
                var totalPrice= parseFloat(price) * parseFloat(quantity);
                alert(totalPrice);
            }
        }

3 个答案:

答案 0 :(得分:1)

试试这个

var unitPrice = '2,222.00';
var price = unitPrice.replace(/\,/g,'');
var quantity = 10;
if (price != '' && quantity != '') {
    var totalPrice = parseFloat(price,20) * parseFloat(quantity,20);
    alert(totalPrice);
}

答案 1 :(得分:0)

var unitPrice = "2,222.00";

你没有把它作为一个字符串。

你也永远不会使用你的参数。

编辑:您的正则表达式也不正确。

看看这里:str.replace(/^[,\s]+|[,\s]+$/g, '').replace(/,[,\s]*,/g, ',');

这篇文章也应该有所帮助:remove unwanted commas in JavaScript

答案 2 :(得分:0)

以字符串格式输入价格并使用split()

function cal()
    {
        var unitPrice = "2,222.00";
        var price="";
        var res = unitPrice.split(",");
        for (i=0;i<res.length;i++)
        {
            price=price+res[i];
        }
        //var price = unitPrice.replace(/[^0-9\.,]/g, '')
        var quantity = 10
        if (unitPrice != '' && quantity != '') {
            var totalPrice= parseFloat(price) * parseFloat(quantity);
            alert(totalPrice);
        }
    }