Skip to content

Archives

  • 2022年1月
  • 2021年12月
  • 2021年11月
  • 2021年10月
  • 2021年9月

Categories

  • カテゴリーなし
Trend RepositoryArticles and guides
Articles

Arrow Functions In Javascript

On 11月 20, 2021 by admin

© Mandeep Kaur

Arrow Functions – “fat arrow” function とも呼ばれ、比較的新しい方法で JavaScript で簡潔な機能を記述することが可能です。 ECMAScript 6 の仕様で導入され、それ以来 ES6 で最も人気のある機能になっています。 アロー関数では、ファットアロー => 演算子を使って、パラメータの有無にかかわらず、JavaScript の関数を素早く定義することができます。 新しいJavaScript関数を作成する際に、中括弧やfunction、returnキーワードを省略し、より短い関数構文を記述することができるのです。

この記事では、矢印関数を作成するための実際のシナリオをいくつか見てみましょう。 以下の例では、ECMAScript 5 構文が関数式を宣言し、それを変数 birthday に代入しています。 これは、コンソールに “Happy birthday!” という単純なテキスト文字列を出力します。

ES5 syntax with no parameters

row function syntax において、中括弧および function と return キーワードは削除されました。 これで、関数全体は 1 行で済みます。 空の括弧は関数にパラメータがないことを示し、太い矢印は関数本体を(現在存在しない)パラメータに結合します。

ES6 syntax with no parameters
  • One Parameter
  • Two Parameters
  • Object Literals
  • Array Manipulation
  • When Not To Use Arrow Functions

One Parameter

前の例を、1 つのパラメータ、特に name で拡張しましょう。 古い ES5 構文は 1 つのパラメータを取り、その値を返す文字列に追加します。

ES5 構文で 1 つのパラメータ

矢印関数構文は本質的に同じことを行います。 太い矢印の前の括弧で名前パラメータを囲み、関数ブロックの return キーワードを省略する必要があります。

ES6 syntax with one parameter

Two Parameters

望むだけのパラメータの矢印関数を使うことができるのです。 例えば、以下は同じ例で、年齢と名前という2つのパラメータを持つものです。 さて、birthday()関数は、文字列を返すために2つの入力を必要とします。 まず、ECMAScript 5 を使用してみましょう。

ES5 構文で 2 つのパラメーター

、新しい ES6 notation で同じコードを見てみましょう。

ES6 syntax with two parameters

Object Literals

また、矢印関数構文を使用して、ユーザーがオブジェクト リテラルの値を設定するための設定を宣言することができます。 以下の setBirthday() 関数では、誕生日を持つ人の名前と年齢を設定できます。

Object literal setter with ES5 syntax

arrow function notation を使用すると、同じセッター関数がわずか 1 行で定義可能です。

Object literal setter with ES6 syntax

Array Manipulation

Array の操作にも、同様に、矢印関数を使って JavaScript 配列を処理することができる。 たとえば、それぞれ名前と年齢のプロパティを持つ 3 つのオブジェクト リテラルを含む persons 配列を見てみましょう。

Persons 配列は 3 つのオブジェクト リテラルを含み、それぞれ名前と年齢を持つ

JavaScript の組み込み map() メソッドは配列のあらゆる要素で同じ関数をコールできるようにしています。 従来の ES5 記法を使用すると、次のようにすべての人の名前プロパティを返すことができます:

Array manipulation with ES5 syntax

row function notation で、1 行で同じタスクを実行することが可能です。

ES6 syntax

When Not To Use Arrow Functions

arrow function には多くの使用ケースがありますが、いくつかの制約も存在します。 4428>

最も重要なことは、矢印関数を使用してコンストラクターを作成できないことです。 new キーワードを太い矢印構文と一緒に使用すると、コンソールでエラーがスローされます。 これは、JavaScript が矢印関数をオブジェクト メソッドと同じように扱うために起こります。 その結果、JavaScriptオブジェクトの本質的な特性である独自のメソッドを持つことができません。 さらに、矢印関数はこれを異なる方法で扱うので、this キーワードを使用するメソッドを含むオブジェクト リテラルおよびコールバック関数を宣言するために ES6 構文を使用することはできません。 太い矢印構文は多くの使用例があるため、すぐに JavaScript コミュニティのお気に入りの ES6 機能となりました。 一貫して使用される場合、新しいコンパクトな記法は多くの時間と帯域幅を節約し、コードの読みやすさを向上させます。

お読みいただきありがとうございました。

コメントを残す コメントをキャンセル

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

アーカイブ

  • 2022年1月
  • 2021年12月
  • 2021年11月
  • 2021年10月
  • 2021年9月

メタ情報

  • ログイン
  • 投稿フィード
  • コメントフィード
  • WordPress.org
  • DeutschDeutsch
  • NederlandsNederlands
  • SvenskaSvenska
  • DanskDansk
  • EspañolEspañol
  • FrançaisFrançais
  • PortuguêsPortuguês
  • ItalianoItaliano
  • RomânăRomână
  • PolskiPolski
  • ČeštinaČeština
  • MagyarMagyar
  • SuomiSuomi
  • 日本語日本語

Copyright Trend Repository 2022 | Theme by ThemeinProgress | Proudly powered by WordPress