jsで再帰関数を実装する方法

清浅
清浅オリジナル
2019-04-16 11:50:014566ブラウズ

js の再帰関数とは、コード内で自分自身を呼び出す関数のことです。これには 3 つの特徴があります: 入力エラーが発生した場合に発生する終了条件です。基本的なケースが再帰関数の目的です。再帰は関数です。 Function

再帰関数とは、独自の関数を呼び出す関数を指します。次の記事では、js で再帰関数を実装する方法について説明します。これには特定の参考値があり、それが実現されることを願っていますみんなに役立つ。

jsで再帰関数を実装する方法

[推奨チュートリアル: JavaScript チュートリアル]

JavaScript を使用して関数にアクセスできますfrom 関数を外部または他の関数内で呼び出します。関数は内部から呼び出すこともできます。関数が自分自身を呼び出すとき、それは再帰関数と呼ばれます。たとえば、

<script>
  function demo(x) {
  if (x < 0) return;
  if (x === 0) return 1;
  return x * demo(x - 1);
}
console.log(demo(3));
</script>

の出力結果は次のようになります: 6

上の例では、 return x *demo(x - 1) は実際に独自の関数 (demo(x-1)) を再度呼び出しますが、そのパラメータは次のパラメータより 1 つ小さいです。これが再帰関数です。

再帰関数の 3 つの主な特徴

終了条件

終了条件は非常ブレーキのようなもので、入力ミス時の再帰を防ぐことができます。上記の場合、"if (x が終了条件として設定されているため、再帰関数は負の数が入力された場合は実行されません。

基本的なケース

基本的なケースは、再帰関数の目標です。通常、基本ケースは if ステートメントに配置されます。上記のケースでは、"if (x === 0) return 1;" は基本的なケースです。なぜなら、x の値が 0 に減少すると次のことができるからです。階乗値の確認に成功しました。

Recursion

Recursion は実装された関数です。上記の例では "return x * Demon(x - 1) ;" は、再帰関数が実際に発生する場所です。関数によって返された値 x に demo(x-1) を乗算したものが、必要な最終値です。

例:

<script>
 function revStr(str){
 //终止条件
 //str === &#39;&#39;是基本案例
  if (str === &#39;&#39;) return &#39;&#39;;
  //递归
  return revStr(str.substr(1)) + str[0];
}
console.log(revStr(&#39;cat&#39;));
</script>

出力結果は次のとおりです: tac

要約: 上記がこの記事の全内容です。皆様のお役に立てれば幸いです。

以上がjsで再帰関数を実装する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。