国产av日韩一区二区三区精品,成人性爱视频在线观看,国产,欧美,日韩,一区,www.成色av久久成人,2222eeee成人天堂

ホームページ ウェブフロントエンド jsチュートリアル JavaScriptのオブジェクトと配列を破壊します

JavaScriptのオブジェクトと配列を破壊します

Feb 15, 2025 am 10:52 AM

Destructuring Objects and Arrays in JavaScript

javascriptの解體と割り當(dāng)て:コードを簡(jiǎn)素化し、読みやすさを改善

JavaScriptの分解された割り當(dāng)てにより、簡(jiǎn)潔な構(gòu)文を使用して配列またはオブジェクトから個(gè)々の要素を抽出し、変數(shù)に割り當(dāng)て、コードを簡(jiǎn)素化し、より明確かつ読みやすくすることができます。

API応答、機(jī)能的プログラミング、およびReactなどのフレームワークとライブラリなど、

分解と割り當(dāng)てが広く使用されています。また、ネストされたオブジェクトと配列、デフォルトの関數(shù)パラメーター、可変値交換、関數(shù)からの複數(shù)の値を返す、ループのループ、および正規(guī)表現(xiàn)処理にも使用できます。

分解された割り當(dāng)てを使用する場(chǎng)合、次のポイントに注意を払う必要があります。コードのブロックのように見えるため、カーリーブレースでステートメントを開始することはできません。エラーを回避するには、変數(shù)を宣言するか、変數(shù)が宣言されている場(chǎng)合はブラケットを使用します。また、宣言された変數(shù)と非宣言されていない変數(shù)の混合を避けるように注意してください。

分解割り當(dāng)ての使用方法

配列の分解

配列があると仮定します:

分解は、各要素を抽出するためのより簡(jiǎn)単でエラーが発生しない代替品を提供します:
const myArray = ['a', 'b', 'c'];

割り當(dāng)て時(shí)に値名を省略することで特定の値を無(wú)視できます。たとえば、
const [one, two, three] = myArray;

// one = 'a', two = 'b', three = 'c'

または殘りのオペレーター(...)を使用して、殘りの要素を抽出します。
const [one, , three] = myArray;

// one = 'a', three = 'c'
オブジェクトの分解

const [one, ...two] = myArray;

// one = 'a', two = ['b', 'c']

解體はオブジェクトにも適用されます:

この例では、変數(shù)名は1、2、および3つの名前がオブジェクトプロパティ名と一致します。任意の名前の変數(shù)に屬性を割り當(dāng)てることもできます。

const myObject = {
  one:   'a',
  two:   'b',
  three: 'c'
};
// ES6 解構(gòu)示例
const {one, two, three} = myObject;
// one = 'a', two = 'b', three = 'c'
ネストされたオブジェクトを分解

const myObject = {
  one:   'a',
  two:   'b',
  three: 'c'
};

// ES6 解構(gòu)示例
const {one: first, two: second, three: third} = myObject;

// first = 'a', second = 'b', third = 'c'
より複雑なネストされたオブジェクトも參照できます。

これは少し複雑に思えますが、すべての分解された割り當(dāng)てで覚えておいてください:

割り當(dāng)ての左側(cè)は、分解ターゲットです - 割り當(dāng)てられた変數(shù)を定義するパターン

割り當(dāng)ての右側(cè)には、分解されたソースがあります - 抽出されたデータを含む配列またはオブジェクト
const meta = {
  title: 'Destructuring Assignment',
  authors: [
    {
      firstname: 'Craig',
      lastname: 'Buckler'
    }
  ],
  publisher: {
    name: 'SitePoint',
    url: 'https://www.sitepoint.com/'
  }
};

const {
    title: doc,
    authors: [{ firstname: name }],
    publisher: { url: web }
  } = meta;

/*
  doc   = 'Destructuring Assignment'
  name  = 'Craig'
  web   = 'https://www.sitepoint.com/'
*/

    予防策
  • 他にも注意すべきことがいくつかあります。まず、Curly Bracesでステートメントを開始することはできません。たとえば、コードブロックのように見えるため、

たとえば、変數(shù)を宣言する必要があります または変數(shù)が宣言されている場(chǎng)合はブラケットを使用します。たとえば、

また、次のような宣言された変數(shù)と宣言されていない変數(shù)の混合を避けるように注意する必要があります。
// 這會(huì)失敗
{ a, b, c } = myObject;

上記は、脫構(gòu)築の基本的な知識(shí)です。それで、それはどのような狀況で機(jī)能しますか?この質(zhì)問(wèn)をしてくれてうれしいです。

// 這可以工作
const { a, b, c } = myObject;

分解されたユースケース

// 這可以工作
({ a, b, c } = myObject);

Simmer Statement
// 這會(huì)失敗
let a;
let { a, b, c } = myObject;

// 這可以工作
let a, b, c;
({ a, b, c } = myObject);

変數(shù)は、各値を明示的に定義せずに宣言できます。

本物、分解されたバージョンはより長(zhǎng)いです。読みやすいですが、より多くのアイテムの場(chǎng)合はそうではありません。

可変値交換

スワップ値には一時(shí)的な3番目の変數(shù)が必要ですが、分解の使用ははるかに簡(jiǎn)単です。

2つの変數(shù)に限定されません。
const myArray = ['a', 'b', 'c'];

デフォルトの関數(shù)パラメーター

Metaオブジェクトを出力するためにPrettyPrint()関數(shù)があると仮定します:

const [one, two, three] = myArray;

// one = 'a', two = 'b', three = 'c'

分解がない場(chǎng)合は、適切なデフォルト値が利用可能であることを確認(rèn)するために、このオブジェクトを解析する必要があります。

const [one, , three] = myArray;

// one = 'a', three = 'c'
ここで、デフォルト値を任意のパラメーターに割り當(dāng)てることができます。たとえば、

const [one, ...two] = myArray;

// one = 'a', two = ['b', 'c']
しかし、解體を使用して値を抽出し、必要に応じてデフォルト値を割り當(dāng)てることができます。

これが読みやすいかどうかはわかりませんが、明らかに短いです。
const myObject = {
  one:   'a',
  two:   'b',
  three: 'c'
};
// ES6 解構(gòu)示例
const {one, two, three} = myObject;
// one = 'a', two = 'b', three = 'c'

関數(shù)から複數(shù)の値を返します

関數(shù)は1つの値のみを返すことができますが、これは複雑なオブジェクトまたは多次元配列になります。分解の割り當(dāng)てにより、これはより実用的になります

loop
const myObject = {
  one:   'a',
  two:   'b',
  three: 'c'
};

// ES6 解構(gòu)示例
const {one: first, two: second, three: third} = myObject;

// first = 'a', second = 'b', third = 'c'

本情報(bào)の配列を検討してください:

es6のfor-for-for-in-in-in-in-index/keyの代わりに各値を抽出することを除いて、:

const meta = {
  title: 'Destructuring Assignment',
  authors: [
    {
      firstname: 'Craig',
      lastname: 'Buckler'
    }
  ],
  publisher: {
    name: 'SitePoint',
    url: 'https://www.sitepoint.com/'
  }
};

const {
    title: doc,
    authors: [{ firstname: name }],
    publisher: { url: web }
  } = meta;

/*
  doc   = 'Destructuring Assignment'
  name  = 'Craig'
  web   = 'https://www.sitepoint.com/'
*/

分解の割り當(dāng)ては、次のようなさらなる機(jī)能強(qiáng)化を提供します

// 這會(huì)失敗
{ a, b, c } = myObject;

正規(guī)表現(xiàn)処理

// 這可以工作
const { a, b, c } = myObject;

正規(guī)表現(xiàn)関數(shù)(一致など)一致の配列を返します。これは、分解された割り當(dāng)てのソースを構(gòu)成できます。

さらに読み取り

// 這可以工作
({ a, b, c } = myObject);

分解の割り當(dāng)て - MDN javascriptを使用して割り當(dāng)ての分解にパフォーマンスの損失はありますか-Reddit

    for ... of Statement - mdn
  • ES6解體割り當(dāng)て(FAQ)
  • に関するよくある質(zhì)問(wèn)

(長(zhǎng)さが長(zhǎng)すぎて擬似オリジナルの目標(biāo)と一致しないため、FAQパーツはここで省略されています。FAQパーツの內(nèi)容は元のテキストと非常に偶然のものであり、直接保持は擬似を引き起こします-ORIGINALITYが低すぎるように。)ステートメントの調(diào)整、同義語(yǔ)の置換、元のテキストの再編成を行うことにより、元のテキストの擬似オリジナル処理が完了し、寫真の元の形式と場(chǎng)所が保持されます。

以上がJavaScriptのオブジェクトと配列を破壊しますの詳細(xì)內(nèi)容です。詳細(xì)については、PHP 中國(guó)語(yǔ) Web サイトの他の関連記事を參照してください。

このウェブサイトの聲明
この記事の內(nèi)容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰屬します。このサイトは、それに相當(dāng)する法的責(zé)任を負(fù)いません。盜作または侵害の疑いのあるコンテンツを見つけた場(chǎng)合は、admin@php.cn までご連絡(luò)ください。

ホットAIツール

Undress AI Tool

Undress AI Tool

脫衣畫像を無(wú)料で

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード寫真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

寫真から衣服を削除するオンライン AI ツール。

Clothoff.io

Clothoff.io

AI衣類リムーバー

Video Face Swap

Video Face Swap

完全無(wú)料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡(jiǎn)単に交換できます。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無(wú)料のコードエディター

SublimeText3 中國(guó)語(yǔ)版

SublimeText3 中國(guó)語(yǔ)版

中國(guó)語(yǔ)版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強(qiáng)力な PHP 統(tǒng)合開発環(huán)境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

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

Java vs. JavaScript:混亂を解消します Java vs. JavaScript:混亂を解消します Jun 20, 2025 am 12:27 AM

JavaとJavaScriptは異なるプログラミング言語(yǔ)であり、それぞれ異なるアプリケーションシナリオに適しています。 Javaは大規(guī)模なエンタープライズおよびモバイルアプリケーション開発に使用されますが、JavaScriptは主にWebページ開発に使用されます。

JavaScriptコメント:短い説明 JavaScriptコメント:短い説明 Jun 19, 2025 am 12:40 AM

JavaScriptcommentsEareEssentialential-formaining、およびGuidingCodeexecution.1)single-linecommentseared forquickexplanations.2)多LinecommentsexplaincomplexlogiCorprovidededocumentation.3)clarifyspartsofcode.bestpractic

JSで日付と時(shí)間を操作する方法は? JSで日付と時(shí)間を操作する方法は? Jul 01, 2025 am 01:27 AM

JavaScriptで日付と時(shí)間を処理する場(chǎng)合は、次の點(diǎn)に注意する必要があります。1。日付オブジェクトを作成するには多くの方法があります。 ISO形式の文字列を使用して、互換性を確保することをお?jiǎng)幛幛筏蓼埂?2。時(shí)間情報(bào)を取得および設(shè)定して、メソッドを設(shè)定でき、月は0から始まることに注意してください。 3.手動(dòng)でのフォーマット日付には文字列が必要であり、サードパーティライブラリも使用できます。 4.ルクソンなどのタイムゾーンをサポートするライブラリを使用することをお?jiǎng)幛幛筏蓼?。これらの重要なポイントを?xí)得すると、一般的な間違いを効果的に回避できます。

なぜの下部にタグを配置する必要があるのですか? なぜの下部にタグを配置する必要があるのですか? Jul 02, 2025 am 01:22 AM

PLACSTHETTHETTHE BOTTOMOFABLOGPOSTORWEBPAGESERVESPAGESPORCICALPURPOSESESFORSEO、userexperience、andDesign.1.IthelpswithiobyAllowingseNStoAccessKeysword-relevanttagwithtagwithtagwithtagwithemaincontent.2.iTimrovesexperiencebyepingepintepepinedeeping

JavaScript vs. Java:開発者向けの包括的な比較 JavaScript vs. Java:開発者向けの包括的な比較 Jun 20, 2025 am 12:21 AM

javascriptispreferredforwebdevelopment、whilejavaisbetterforlge-scalebackendsystemsandroidapps.1)javascriptexcelsininintingtivewebexperiences withitsdynAmicnature anddommanipulation.2)javaofferstruntypyping-dobject-reientedpeatures

JavaScript:効率的なコーディングのためのデータ型の調(diào)査 JavaScript:効率的なコーディングのためのデータ型の調(diào)査 Jun 20, 2025 am 12:46 AM

javascripthassevenfundamentaldatypes:number、string、boolean、undefined、null、object、andsymbol.1)numberseadouble-precisionformat、有用であるため、有用性の高いものであるため、but-for-loating-pointarithmetic.2)ストリングリムムット、使用率が有用であること

DOMでのイベントの泡立ちとキャプチャとは何ですか? DOMでのイベントの泡立ちとキャプチャとは何ですか? Jul 02, 2025 am 01:19 AM

イベントキャプチャとバブルは、DOMのイベント伝播の2つの段階です。キャプチャは最上層からターゲット要素までであり、バブルはターゲット要素から上層までです。 1.イベントキャプチャは、AddEventListenerのUseCaptureパラメーターをTrueに設(shè)定することにより実裝されます。 2。イベントバブルはデフォルトの動(dòng)作であり、UseCaptureはfalseに設(shè)定されているか、省略されます。 3。イベントの伝播を使用して、イベントの伝播を防ぐことができます。 4.イベントバブルは、動(dòng)的なコンテンツ処理効率を改善するためにイベント委任をサポートします。 5.キャプチャを使用して、ロギングやエラー処理など、事前にイベントを傍受できます。これらの2つのフェーズを理解することは、タイミングとJavaScriptがユーザー操作にどのように反応するかを正確に制御するのに役立ちます。

JavaとJavaScriptの違いは何ですか? JavaとJavaScriptの違いは何ですか? Jun 17, 2025 am 09:17 AM

JavaとJavaScriptは、異なるプログラミング言語(yǔ)です。 1.Javaは、エンタープライズアプリケーションや大規(guī)模なシステムに適した、靜的に型付けされ、コンパイルされた言語(yǔ)です。 2。JavaScriptは動(dòng)的なタイプと解釈された言語(yǔ)であり、主にWebインタラクションとフロントエンド開発に使用されます。

See all articles