この記事では、JavaScriptにおけるアロー関数と通常の関数の違いについて解説します。具体的な内容は以下のとおりです。 矢印関数:楽しみましょう = () => { console.log('ララララ'); } 通常の機能:関数fun() { console.log('ララ'); } 矢印関数は匿名関数と同等であり、関数定義を簡素化します。矢印関数には 2 つの形式があります。1 つは、{...} と return が省略された 1 つの式のみを含む形式です。複数の文を記述できる型もあり、その場合は { ... } と return を省略することはできません。 矢印関数は匿名関数であり、コンストラクターとして使用したり、new と共に使用したりすることはできません。 FunConstructor = () => { コンソールログ('lll'); } fc = new FunConstructor(); とします。 矢印関数は引数をバインドせず、代わりに残りパラメータを使用します...解決策 関数A(a){ console.log(引数); } A(1,2,3,4,5,8); // [1, 2, 3, 4, 5, 8, 呼び出し先: ƒ, Symbol(Symbol.iterator): ƒ] B = (b)=>{とする console.log(引数); } B(2,92,32,32); // キャッチされない ReferenceError: 引数が定義されていません C = (...c) => {とする コンソールログ(c); } C(3,82,32,11323); // [3, 82, 32, 11323] アロー関数はthisをバインドせず、それが配置されているコンテキストのthis値を自身のthis値として取得します。 var obj = { 10, b: () => { console.log(this.a); // 未定義 console.log(this); // ウィンドウ {postMessage: ƒ, blur: ƒ, focus: ƒ, close: ƒ, frames: Window, …} }, c: 関数() { コンソールログ(this.a); // 10 console.log(this); // {a: 10, b: ƒ, c: ƒ} } } obj.b(); オブジェクト var obj = { 10, b: 関数(){ コンソールログ(this.a); //10 }, c: 関数() { 戻り値 () =>{ コンソールログ(this.a); //10 } } } obj.b(); obj.c()(); 矢印関数がcall()またはapply()メソッドを通じて関数を呼び出す場合、渡されるパラメーターは 1 つだけであり、 thisには影響しません。 obj2 = { 10, b: 関数(n) { f = (n) => n + this.a とします。 f(n) を返します。 }, c: 関数(n) { f = (n) => n + this.a とします。 m = {とします 答え: 20 }; f.call(m,n) を返します。 } }; コンソールログ(obj2.b(1)); // 11 コンソールログ(obj2.c(1)); // 11 アロー関数にはプロトタイププロパティがありません var a = ()=>{ 1 を返します。 } 関数b(){ 2を返します。 } console.log(a.prototype); // 未定義 console.log(b.prototype); // {コンストラクタ: ƒ} 矢印関数はジェネレーター関数として使用できず、yieldキーワードも使用できません。 要約する
以上がこの記事の全内容です。皆様の勉強のお役に立てれば幸いです。また、123WORDPRESS.COM を応援していただければ幸いです。 以下もご興味があるかもしれません:
|
<<: NexusはHTTPSプロトコルをサポートするためにnginxプロキシを使用します
>>: VMware vCenter 6.7 のインストール プロセス (グラフィック チュートリアル)
Mac で開発されたプロジェクトがあり、パッケージ npm i がインストールされており、すべて正常...
Linux サーバーに GRUB をインストールする方法クラウド移行ツールを使用して、CentOS ...
目次01 よくある故障 1 02 よくある欠陥 2 03 よくある欠陥 3 04 よくある欠陥 4 ...
目次1. ステートフック1. 基本的な使い方2. 更新3. 合併を実現する4. 遅延初期化状態5. ...
WEB開発は主に2つのインタラクション(B/Sデータ)から構成されますブラウザ: 1html、css...
序文何年も前、私はサーバー側の初心者でしたが、業界の競争が激しくなるにつれて、フロントエンドの初心者...
Rational ClearCase は、コードやその他のソフトウェア開発資産のバージョン管理を実...
まずMySQLの公式ドキュメントを見てみましょう: 5.7 {データベース | スキーマ} を作成 ...
この記事では、主に 2 種類の下線の動的効果について説明します。1 つ目は、ホバーすると X 軸が内...
開発中に以下の状況が発見されました。 (1) ファイルが.jspファイル拡張子で保存されている場合、...
目次LAMPアーキテクチャ1.ランプの紹介2. WebサービスワークフローWebサーバーのリソースは...
Nginx は、わずか数年で Web サーバー市場の大部分を占めるようになりました。周知のとおり、N...
1. 角を丸くする今日の Web デザインは、常に最新の開発テクノロジーに追随しており、HTML5 ...
目次1. 関連するbinlog設定2. binlogに関する詳細設定2.1 バイナリログモードの変更...
目次序文さまざまなオブジェクト間の関係配列バッファ型付き配列Uint8ClampedArray文字間...