简单的javascript运费计算器问题

时间:2012-11-14 18:55:45

标签: javascript html

所以这是我的代码。这是一个非常简单的运费计算器。当我运行它时,所有显示的都是询问购买价格的消息框,然后显示“—。有谁知道发生了什么事?

<!DOCTYPE html>

<html lang="en">
 <head>
    <title> Shipping Calculator</title>

<script >
var purchasePrice = window.prompt("Please enter the price of your purchase to calculate your                shipping cost.");
 var shippingPrice;

function shippingMath(purchasePrice, shippingPrice) {
     if (purchasePrice <= 25) {
        shippingPrice = 1.50;
    }
     else {
        shippingPrice = (purchasePrice * '.10');
    }
    var totalCost = (purchasePrice + shippingPrice);
    return totalCost;

}

shippingMath(purchasePrice, shippingPrice);

document.writeln("Your total is " + totalCost); 
</script>

</head>

<body>
</body>
</html>

感谢任何帮助。谢谢。这是一个学校作业,所以这是我允许这样做的唯一方式。一个简单的功能,没有数组或其他任何东西。谢谢!

2 个答案:

答案 0 :(得分:4)

既然你说这是为了完成家庭作业,我会试着引导你找到答案,而不是直接给你。

您需要考虑的几件事情:

  1. 你是否在html中正确声明了javascript
  2. 何时在页面上运行javascript
  3. 您的功能如何尝试显示答案
  4. 您是否在函数中使用了正确的对象(String vs Number)
  5. 如果你回答这4个问题,解决方案应该跳出来。

答案 1 :(得分:1)

您在代码中可能遇到的一个潜在问题涉及变量的范围。

请考虑以下事项:

function x() {
  var y = 10;
  return y;
}

函数 x 将返回值 10 ,并且变量 y 将无法在函数 X

因此,以下代码将显示一个包含“10”的警告框:

z = x();
alert(z);

虽然以下代码会引发错误(或有意外行为):

z = x();
alert(y);