总结时javascript返回NaN

Udd*_*ers 0 javascript math

我正在尝试用javascript做额外的总和,以便在他们的货物和运输加在一起时计算出用户的总成本,但是我得到的全部是NaN为什么?这是我的代码的小提琴

从小提琴移植的代码:

 $("#country").change(function() {
    var shipping_cost = parseFloat($("#shipping").text().replace(pattern, ''));
    var total      = parseFloat($("#goods").text().replace(pattern, ''));
    var pattern = /[^0-9.-]+/g;
    var result = total + shipping_cost;
    console.log(result);

       if($(this).val() == "17") {
           $("#shipping").text("£0.00");
           $("#full_price").text("£"+result);
       } else {
           $("#shipping").text("£5.00");
           $("#full_price").text("£"+result);
       }
 });?
Run Code Online (Sandbox Code Playgroud)

标记:

<select id="country">
    <option value=17>Option 1</option>
    <option value=18>Option 2</option>
    <option value=19>Option 3</option>
</select>

<p id=goods>£5.00</p>

<p id=shipping>£0.00<p>
Run Code Online (Sandbox Code Playgroud)

Mik*_*son 7

您的模式声明应该在您的解析之前,如下所示:

var pattern = /[^0-9.-]+/g;
var shipping_cost = parseFloat($("#shipping").text().replace(pattern, ''));
var total      = parseFloat($("#goods").text().replace(pattern, ''));
Run Code Online (Sandbox Code Playgroud)