-3

ここに私のコードがあります。これは本当にシンプルな送料計算機です。実行すると、表示されるのは購入価格を尋ねるメッセージボックスだけで、その後にこの「 ​ 」が表示されます。何が起こっているか知っている人はいますか?

<!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>

どんな助けでも大歓迎です。ありがとう。これは学校の課題のためなので、これは私が許可されている唯一の方法です。1 つの単純な関数で、配列などはありません。ありがとう!</p>

4

2 に答える 2

4

これは宿題だとおっしゃっていたので、あからさまに答えを出すのではなく、答えを導き出そうとします。

考慮すべき点がいくつかあります。

  1. HTMLで適切に宣言されたjavascriptはありますか
  2. ページで JavaScript が実行されるタイミング
  3. あなたの関数はどのように答えを表示しようとしていますか
  4. 関数で適切なオブジェクト (文字列と数値) を使用していますか?

この 4 つの質問に答えれば、解決策がすぐに思い浮かびます。

于 2012-11-14T19:00:40.870 に答える
1

コードで見つかる可能性がある潜在的な問題の 1 つは、変数のスコープに関するものです。

次の点を考慮してください。

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

関数xは値10を返し、変数yは関数xの外では参照できません。

したがって、次のコードは「10」を含む警告ボックスを表示します。

z = x();
alert(z);

次のコードはエラーをスローします (または予期しない動作をします)。

z = x();
alert(y);
于 2012-11-16T16:46:05.877 に答える