序文今日は関数の長さを計算する方法を説明します。皆さんがそこから何かを学び、基礎を固めてくれることを願っています。 なぜなぜ私はこの知識ポイントを思いついたのでしょうか?というのは、昨夜、グループでクラスメートの一人が 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リモート接続の自動切断の問題の解決方法の詳細な説明
Docker で war をデプロイするには、コンテナを使用する必要があります。ここでは tomca...
目次01 k8sの一般的なコントローラーRCコントローラーデプロイメント コントローラーステートフル...
目次背景MySQLが完全に起動したかどうかを確認する方法事故最初の変更2回目の改訂要約するMySQL...
序文特に bash 環境では、スクリプトの実行方法によって結果が異なります。スクリプトを実行する方法...
この記事では、セカンダリメニュー効果を実現するためのJavaScriptの具体的なコードを参考までに...
MySQL は、コミュニティ エディション (コミュニティ サーバー) とエンタープライズ エディシ...
同じサーバーで、Docker を使用して Mysql のマスター スレーブ同期設定をシミュレートしま...
1. Alipay方式: Alipay メソッド: Alipay をクリックして支払い、バックエンド...
Ubuntu 20.04はnetplanを通じてネットワークを管理するため、以前のバージョンとは少...
フォームを作成するときに、送信ボタンとリセットボタンを配置することがよくあります。ページの外観を考慮...
最近はコース設計を実現するために、フロントエンドも少しやっています。今日はいくつかの機能を実現するた...
怖いですね! 写真の翻訳: (内側から外側へ)最初のレイヤー:ユーザーエクスペリエンス第2層:コンテ...
大学 4 年生のときのインターンシップ中に、表内のデータの番号をクリックすると、そのデータの下に新し...
タブ切り替えもプロジェクトではよく使われる技術です。一般的にタブ切り替えはjsやjqを使って実装され...
個人的にはインストール版よりも解凍版の方がインストールしやすいと思います。早速、解凍版のインストール...