【週刊ドットインストール】 考える力を養うための新クラス『データで学ぶアルゴリズム』を256timesでリリース!
const calc = (num, func) => func(num); console.log(calc(20, (num) => { return num * 2; }));
は関数 calc の func(num) が、
calc
func(num)
このように置き換わると思いますが、
const calc = (num, func) => { (num) => { return num * 2;}(20); }
calc ブロック内で、 (num) => { return num * 2;}(20); ↓ (20) => { return 20 * 2;}(20); ↓ (20) => { return 40;}(20);
(num) => { return num * 2;}(20);
(20) => { return 20 * 2;}(20);
(20) => { return 40;}(20);
このように () 中の 20 が (num) => {rerturn num * 2;} の引数 num に代入された後 num * 2 が実行され、その結果が calc の呼び出し元に返るのか、calc のブロック内の挙動がよく分かりません。
()
(num) => {rerturn num * 2;}
num
num * 2
{ return 40;} の後ろに (20) があるので、なんだか違和感を感じてしまいます。
{ return 40;}
(20)
ドットインストールは、3分動画でマスターできるプログラミング学習サービスです。
3分で気軽に学習でき、スマートフォンからも視聴可能です。ホームページやWebサービスの制作を通して、実践的にプログラミングを学べます。
他にも、ゲーム制作やデータ分析・機械学習・AIに使われる言語まで幅広くカバー。学びたい分野のレッスンがきっと見つかります。
この回答を見るにはプレミアムプランへの登録が必要です
は関数
calcのfunc(num)が、このように置き換わると思いますが、
calcブロック内で、(num) => { return num * 2;}(20);↓
(20) => { return 20 * 2;}(20);↓
(20) => { return 40;}(20);このように
()中の 20 が(num) => {rerturn num * 2;}の引数numに代入された後num * 2が実行され、その結果がcalcの呼び出し元に返るのか、calcのブロック内の挙動がよく分かりません。{ return 40;}の後ろに(20)があるので、なんだか違和感を感じてしまいます。