この記事では、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 のインストール プロセス (グラフィック チュートリアル)
オプションに属性 selected = "selected" を追加すると、それ...
1. vsftpdコンポーネントをインストールするインストールコマンド: [root@ink4t ~...
1. 基本概念1. Sitemeshはページ装飾技術です。 1 : フィルターを通してページアクセス...
目次1 システムの紹介2 システムショートカット3 一般的なシステムコマンド1 システムの紹介 1....
この記事では、参考までにMySQL8.0.11のインストールと設定方法、およびMySQL8.0の新し...
目次ネットワーク構成を表示するネットワークインターフェース情報を表示する---ifconfigルーテ...
序文私は Win7 を搭載した古いラップトップを持っています。古いシステムを維持しながら、同時に U...
1. docker imagesを使用して、このマシン上のすべてのイメージファイルを表示します。 2...
目次K8Sマスター基本アーキテクチャポッドオーケストレーションコンセプトPod オブジェクトのプロパ...
CSS命名規則 ヘッダー: ヘッダーコンテンツ: コンテンツ/含むフッターナビゲーション: navサ...
1. パラダイムこのパラダイムの英語名は Normal Form であり、1970 年代にリレーショ...
この関数の効果はvue的provide/injectに似ています。 contextを通じて反応できる...
Docker 公開方法は、DevOps (送信、コンパイル、パッケージ化、リリースなどの一連のイベ...
CSS のモジュール ソリューションは、JS のモジュール ソリューションと同じくらい多く存在すると...
この記事では、MySQL 8.0.12のインストール方法に関する詳細なチュートリアルを参考までに紹介...