私は雄弁なjavascriptでこの例を見て、この関数がどのように動作するのか不思議でした。誰かがこれを私に説明してもらえますか?javascriptの関数...ドットを結ぶのを助けてください
function multiplier (factor) {
return function(number){
return number * factor;
};
}
var twice = multiplier(2);
console.log((twice(5));
// 10
私は、パラメータ係数倍(5)について混乱= 2
イムとどのようにそれがパラメータ番号になりに従うことができると思います。多分それはあなたが
function multiplier (factor) {
function inner(number){
return number * factor;
};
return inner;
}
var twice = multiplier(2);
console.log((twice(5));
を理解するのに役立ちます
あなたは新しい関数を返す関数を呼び出します – Endless
@Endless私もそれを見ました。私は彼らが理解するためにOPのために十分に似ているとは確信していません – mplungjan
Multiplierはクロージャと呼ばれるものを作成し、これは次に無名関数を返します。ここの賢いことは、javascriptがfactor変数を取得したことです。だからあなたの例では、2に設定された因数を持つ無名関数に2倍に等しい。 – Keith