AS 2|JS-高次関数
3945 ワード
高次関数
関数を呼び出すたびに、戻り関数を生成する関数を高次関数(highorder function)と呼びます.const func = () => {
return () => {
console.log('abcd');
};
};
ここで返される関数は、他の変数に格納してもよいし、その変数に格納されている関数を再呼び出してもよい.const innerFunc = func();
innerFunc(); // abcd
返される値を変更する場合は、パラメータを使用します.const func = (change) => {
return () => {
console.log(change);
};
};
矢印関数の構文によれば、関数の本文にすぐに返される値がある場合は{とreturnを省略できます.const func = (change) => () => {
console.log(change);
};
これはスーパーのユシカみたい・・・🪆
if文の重複を解消する
文を重ねて使うと、コードを把握するのが難しい.この場合、if文の重複を解消するには、次の方法を使用します.
1.共通のプログラムを各分岐点の内部に置く.
2.if文を作成し、ブレークポイントで短いステップから実行します.
3.簡単な手順が完了したら、return(関数内)またはbreak(文内)で中断します.
4.elseを削除します.(オーバーラップの1つが除去されます.)
5.次の重複する分岐点が出現した場合、1~4のプロセスを繰り返す.
AS 2 day
最初から効率的で美しいコードを書くのは容易ではありませんが.
しかし、望む結果値を得るためだけではありません.
完成したコードに不要な部分は、効率を高める方法を考えてみましょう.
Reference
この問題について(AS 2|JS-高次関数), 我々は、より多くの情報をここで見つけました
https://velog.io/@4_21ee/AS-2-JS-고차-함수
テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol
const func = () => {
return () => {
console.log('abcd');
};
};
const innerFunc = func();
innerFunc(); // abcd
const func = (change) => {
return () => {
console.log(change);
};
};
const func = (change) => () => {
console.log(change);
};
Reference
この問題について(AS 2|JS-高次関数), 我々は、より多くの情報をここで見つけました https://velog.io/@4_21ee/AS-2-JS-고차-함수テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol