序文今日は関数の長さを計算する方法を説明します。皆さんがそこから何かを学び、基礎を固めてくれることを願っています。 なぜなぜ私はこの知識ポイントを思いついたのでしょうか?というのは、昨夜、グループでクラスメートの一人が ByteDance の面接の質問について話し合っていたからです。 正直に言うと、最初はこの質問に答えることができませんでした。実は、面接官が Number プロトタイプの toString メソッドをテストしたいのはわかっていたのですが、toString 関数の長さはどれくらいかという難しい質問に行き詰まってしまいました。それが今日この記事を書く理由です。 いくらですか?パラメータの数次の例を見てみましょう 関数 fn1() {} 関数 fn2 (名前) {} 関数 fn3 (名前, 年齢) {} console.log(fn1.length) // 0 コンソール.log(fn2.length) // 1 コンソール.log(fn3.length) // 2 長さは関数のパラメータの数と同じであることがわかります。しかし、これは本当にそうなのでしょうか?続きを読む デフォルトパラメータデフォルトのパラメータがあった場合、関数の長さはどれくらいになりますか? 関数 fn1 (名前) {} 関数 fn2 (name = '林三心') {} 関数 fn3 (名前、年齢 = 22) {} 関数 fn4 (名前、年齢 = 22、性別) {} function fn5(name = '林三心', age, gender) { } コンソール.log(fn1.length) // 1 console.log(fn2.length) // 0 コンソール.log(fn3.length) // 1 コンソール.log(fn4.length) // 1 コンソール.log(fn5.length) // 0 関数の長さは、デフォルト値を持つ最初のパラメータの前のパラメータの数であることを示しています。 残りのパラメータ関数の仮パラメータには残余パラメータもあります。残余パラメータがある場合、それらはどのように計算されるのでしょうか? 関数 fn1(名前、...引数) {} コンソール.log(fn1.length) // 1 残りのパラメータは長さの計算には含まれていないことがわかります。 要約する最後に、123['toString'].length + 123 = ? の答えは 124 であることをまず発表します。 要約すると、長さは関数オブジェクトのプロパティ値であり、関数に渡す必要があるパラメータの数、つまり仮パラメータの数を示します。仮パラメータの数には残りのパラメータは含まれず、デフォルト値を持つ最初のパラメータの前のパラメータの数のみが含まれます。 js の関数の長さに関するこの記事はこれで終わりです。js の関数の長さについてさらに詳しく知りたい場合は、123WORDPRESS.COM の過去の記事を検索するか、以下の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。 以下もご興味があるかもしれません:
|
<<: ソースコードから MySQL 8.0.20 をコンパイルしてインストールする詳細なチュートリアル
>>: xshellリモート接続の自動切断の問題の解決方法の詳細な説明
コンテキストの定義と目的コンテキストは、コンポーネント ツリーにプロパティを明示的に渡すことなく、コ...
同僚から助けを求められました。バックエンド システムへのログインは成功したものの、システムには正常に...
目次1 Nginxのインストール2 Nginxの設定3 ホストファイルを変更する4 テストNginx...
1. インターネットで長時間検索しましたが、判定表が存在するかどうかがわからなかったので、漠然と削除...
バックエンド プログラマーとして、フロントエンドのものをいじらなければならないこともあります。そこで...
WeChatアプレットuniappは左スワイプで削除効果を実現成果を達成する1. スワイプしてリス...
太陽系の 8 つの惑星(衛星を除く)のアニメーションを作成します。すべての惑星は太陽の周りを回ってい...
Web ページには、非常に複雑な HTML 構造があります。CSS を使用して関連するスタイルを定義...
SpringBoot は巨大な Python のようで、ゆっくりと私たちの周りを巻きつき、麻痺させま...
この記事では、具体的な例を使用して、CentOS 7 から CentOS 8 にアップグレードする方...
この記事では、参考までに、簡単な計算機能を実装するためのJavaScriptの具体的なコードを紹介し...
この記事のガイド: テーブル内のデータを削除するには、削除と切り捨ての 2 つの方法があります。TR...
序文Linux では「すべてがファイル」であることは誰もが知っているので、ファイルのオープン状態を確...
私はtengineを使用しています。インストールディレクトリは/usr/local/tengineで...
次のコマンドを使用してコンテナを作成し、ローカルの /home/dock/Downloads ディレ...