2
if (!window.statistics) window.statistics = {};

statistics.Update = function (var sales) {
    ...
}

Unexpected token varここで、var sales引数でエラーが発生します。このタイプの関数には引数を渡すことができないため、このようなことを期待しています。引数なしで同じ関数型を持っている場合、それは機能します。

これはなぜですか? また、この関数に値を渡すにはどうすればよいですか?

4

2 に答える 2

4

を削除するだけvarで、関数には 1 つの名前付き引数が含まれます。それを呼び出すとき (コードで呼び出すことはありません)、その名前付き引数で受け取りたい値を渡します。

if (!window.statistics) window.statistics = {};

statistics.Update = function (sales) {
// No 'var' here -------------^

    console.log(sales);

}; // <== Off-topic: Note the semicolon

statistics.Update("foo"); // Logs "foo" to the console
于 2013-11-07T08:17:38.960 に答える
1

パラメータに名前を付けるだけで、値を指定する必要はありません。

statistics.Update = function (sales) {
    ...
}

次のようにメソッドを呼び出して、値を渡すことができます。

var s = '';

statistics.Update(s);
于 2013-11-07T08:19:26.720 に答える