ホームページ ウェブフロントエンド jsチュートリアル オブジェクトの分割により JavaScript 関数のパラメーターはどのように簡素化されるのでしょうか?

オブジェクトの分割により JavaScript 関数のパラメーターはどのように簡素化されるのでしょうか?

Nov 29, 2024 am 12:03 AM

How Does Object Destructuring Simplify JavaScript Function Parameters?

関数パラメータの JavaScript のオブジェクト分割の詳細

JavaScript で関数を宣言する場合、開発者は通常、パラメータを次のような名前付き変数として定義します。

function moo(myArgObj) {
    print(myArgObj.a);
}
ログイン後にコピー

ただし、言語の最近のバージョンでは、

function moo({ a, b, c }) { // valid syntax!
    print(a); // prints 4
}
ログイン後にコピー

オブジェクトの分割とは何ですか?

オブジェクトの分割は、オブジェクトから特定のプロパティを抽出するパターンです。上記の関数では、中括弧 {} でオブジェクト名を変数名で囲み、変数名は対応するオブジェクト プロパティにバインドされています。

構文について

構文関数パラメータでのオブジェクトの構造化は次のとおりです:

function functionName({ property1, property2, ... }) {
    // code using the destructured properties
}
ログイン後にコピー
  • curly中かっこ {} は、オブジェクトが構造化されていないことを示します。
  • プロパティ名は、引数として渡されたオブジェクトのプロパティと一致します。
  • プロパティ値は関数内で直接アクセスできます。

関数内の分割の例パラメータ

// Extract the 'age' property
function getAge({ age }) {
    console.log(age);
}

// Extract multiple properties
function getFullName({ firstName, lastName }) {
    console.log(`${firstName} ${lastName}`);
}

// Use the rest operator ... to extract remaining properties
function getProfile({ name, ...profileDetails }) {
    console.log(name);
    console.log(profileDetails); // contains other object properties
}
ログイン後にコピー

詳細情報のリソース

  • MDN: [構造化割り当て](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/Destructuring_assignment)
  • ECMAScript wiki: [バインディングの構造化](https://wiki.ecmascript .org/doku.php?id=harmony:destructuring_binding)
  • DailyJS: [オブジェクトの構造化とES6 のデフォルト パラメーター](https://dailyjs.com/2015/04/28/object-destructuring-and-default-parameters-in-es6/)

以上がオブジェクトの分割により JavaScript 関数のパラメーターはどのように簡素化されるのでしょうか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットな記事タグ

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

JavaScriptの文字列文字を交換します JavaScriptの文字列文字を交換します Mar 11, 2025 am 12:07 AM

JavaScriptの文字列文字を交換します

カスタムGoogle検索APIセットアップチュートリアル カスタムGoogle検索APIセットアップチュートリアル Mar 04, 2025 am 01:06 AM

カスタムGoogle検索APIセットアップチュートリアル

例JSONファイルの例 例JSONファイルの例 Mar 03, 2025 am 12:35 AM

例JSONファイルの例

8見事なjQueryページレイアウトプラグイン 8見事なjQueryページレイアウトプラグイン Mar 06, 2025 am 12:48 AM

8見事なjQueryページレイアウトプラグイン

10 jQuery構文蛍光物 10 jQuery構文蛍光物 Mar 02, 2025 am 12:32 AM

10 jQuery構文蛍光物

独自のAjax Webアプリケーションを構築します 独自のAjax Webアプリケーションを構築します Mar 09, 2025 am 12:11 AM

独自のAjax Webアプリケーションを構築します

' this' JavaScriptで? ' this' JavaScriptで? Mar 04, 2025 am 01:15 AM

' this' JavaScriptで?

10 JavaScript&JQuery MVCチュートリアル 10 JavaScript&JQuery MVCチュートリアル Mar 02, 2025 am 01:16 AM

10 JavaScript&JQuery MVCチュートリアル

See all articles