目次
JavaScriptアレイ要素のマージ:同じIDを持つ要素を1つのオブジェクトにマージする
ホームページ ウェブフロントエンド jsチュートリアル JavaScriptを使用して、同じIDを持つArray要素を1つのオブジェクトにマージする方法は?

JavaScriptを使用して、同じIDを持つArray要素を1つのオブジェクトにマージする方法は?

Apr 04, 2025 pm 05:09 PM
switch red

JavaScriptを使用して、同じIDを持つArray要素を1つのオブジェクトにマージする方法は?

JavaScriptアレイ要素のマージ:同じIDを持つ要素を1つのオブジェクトにマージする

データ処理では、同じIDを持つ配列要素を単一のオブジェクトにマージする必要があることがよくあります。この記事では、同じIDで異な​​る属性を持つ配列要素を新しい配列形式に変換するJavaScriptソリューションを提供します。

元のデータ形式:

 const list = [
    {id: "202301"、jine:23、type: "ディナー"}、
    {id: "202301"、jine:87.5、type: "Breakfast"}、
    {id: "202301"、jine:1065.5、タイプ: "中国料理"}、
    {id: "202302"、jine:10、type: "ディナー"}、
    {id: "202302"、jine:181.5、type: "Breakfast"}、
    {id: "202302"、jine:633.5、タイプ: "中華料理"}
];

ターゲットデータ形式:

 const targetList = [
    {id: "202301"、jine1:87.5、jine2:1065.5、jine3:23}、
    {id: "202302"、jine1:181.5、jine2:633.5、jine3:10}
];

解決:

reduceメソッドを使用して、データ変換を実装します。この方法は、配列を反復し、各要素を結果オブジェクトに蓄積します。

 const result = object.values(list.reduce((acc、curr)=> {
    const {id、jine、type} = curr;
    if(!acc [id]){
        acc [id] = {id};
    }
    switch(type){
        ケース「朝食」:acc [id] .jine1 = jine;壊す;
        ケース「中華料理」:acc [id] .jine2 = jine;壊す;
        ケース「ディナー」:acc [id] .jine3 = jine;壊す;
    }
    ACCを返します。
}、{}));

console.log(result); //ターゲットデータ形式を出力します

コード説明:

  1. reduce方法: reduce方法はlist配列を繰り返し、各要素をオブジェクトaccに蓄積します。
  2. acc[id] idをキーとして使用して、データをaccオブジェクトに保存します。 idが存在しない場合、新しいオブジェクトが作成されます。
  3. switchステートメント: type属性の値に従って、 jine1jine2 、またはjine3jine値を割り当てます。
  4. Object.values最後に、 Object.valuesメソッドを使用してaccオブジェクトを配列に変換して、ターゲットデータ形式を取得します。

この方法は明確かつ簡潔で、外部ライブラリの使用を避け、JavaScriptビルトインメソッドを使用してデータ変換を実装します。また、より多くの種類の食事に対処する必要がある場合は、 switchステートメントにさらにcase追加するだけです。

以上がJavaScriptを使用して、同じIDを持つArray要素を1つのオブジェクトにマージする方法は?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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

ホットAIツール

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

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

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

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

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

SublimeText3 中国語版

SublimeText3 中国語版

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

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

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

Linuxのユーザーリソースを制限する方法は? ulimitを構成する方法は? Linuxのユーザーリソースを制限する方法は? ulimitを構成する方法は? May 29, 2025 pm 11:09 PM

Linuxシステムは、リソースの過度の使用を防ぐために、ULIMITコマンドを介してユーザーリソースを制限します。 1.ulimitは、ファイル記述子(-n)、メモリサイズ(-v)、スレッドカウント(-u)などの数を制限できるビルトインシェルコマンドであり、ソフト制限(現在の有効値)とハードリミット(最大上限)に分割されます。 2。Ulimit-N2048などの一時的な変更には、Ulimitコマンドを直接使用しますが、現在のセッションでのみ有効です。 3.永続的な効果を得るには、/etc/security/limits.confを変更し、PAM構成ファイルを変更し、SessionRequiredPam_limits.soを追加する必要があります。 4. SystemDサービスは、ユニットファイルにLIMを設定する必要があります

Laravelのミドルウェアとは何ですか?それを使用する方法は? Laravelのミドルウェアとは何ですか?それを使用する方法は? May 29, 2025 pm 09:27 PM

ミドルウェアは、HTTP要求を傍受および処理するために使用されるLaravelのフィルタリングメカニズムです。手順を使用します。1。ミドルウェアの作成:コマンド「phpartisanmake:middlewarecheckrole」を使用します。 2。処理ロジックの定義:生成されたファイルに特定のロジックを記述します。 3.ミドルウェアの登録:kernel.phpにミドルウェアを追加します。 4.ミドルウェアを使用:ルーティング定義にミドルウェアを適用します。

Laravelページキャッシュポリシー Laravelページキャッシュポリシー May 29, 2025 pm 09:15 PM

Laravelのページキャッシュ戦略は、Webサイトのパフォーマンスを大幅に改善できます。 1)キャッシュヘルパー関数を使用して、キャッシュなどのページキャッシュを実装します::メソッドを記憶します。 2)Redisなどの適切なキャッシュバックエンドを選択します。 3)データの一貫性の問題に注意を払うと、細かいキャッシュまたはイベントリスナーを使用してキャッシュをクリアできます。 4)さらに最適化は、ルーティングキャッシュ、キャッシュ、キャッシュタグを表示します。これらの戦略を合理的に適用することにより、ウェブサイトのパフォーマンスを効果的に改善できます。

無料の韓国漫画オンライン視聴無料コミックの入り口無料韓国コミックオンライン読書無料プルダウン 無料の韓国漫画オンライン視聴無料コミックの入り口無料韓国コミックオンライン読書無料プルダウン Jun 12, 2025 pm 08:03 PM

インターネットの激しい発展に伴い、韓国のコミック(韓国コミック)は、絶妙な絵画スタイル、魅力的なプロット、豊かで多様なテーマで、世界中のますます多くの読者の愛を獲得しました。エキサイティングな韓国のコミックの世界でどこにでも旅行したい場合は、安定した、無料でリソースが豊富なオンライン読書プラットフォームを見つけることが重要です。この記事では、無料のコミックのために韓国のコミックをオンラインで見るための詳細なガイドを提供し、韓国のコミックの旅を簡単に始めるのに役立ちます。

Redisマスタースレーブレプリケーションの障害トラブルシューティングプロセス Redisマスタースレーブレプリケーションの障害トラブルシューティングプロセス Jun 04, 2025 pm 08:51 PM

Redisマスタースレーブの複製障害のトラブルシューティングと修復の手順には次のものがあります。1。ネットワーク接続を確認し、PingまたはTelnetを使用して接続をテストします。 2. Redis構成ファイルを確認して、レプリカと再生時間が正しく設定されていることを確認します。 3. Redisログファイルを確認し、エラー情報を見つけます。 4.ネットワークの問題の場合は、ネットワークデバイスを再起動するか、代替パスを切り替えてみてください。 5.構成問題の場合は、構成ファイルを変更します。 6.データの同期問題の場合は、Slaveofコマンドを使用してデータを再考します。

Redisクラスターノードの障害の迅速な場所と取り扱い Redisクラスターノードの障害の迅速な場所と取り扱い Jun 04, 2025 pm 08:54 PM

Redisクラスターノード障害の迅速な場所と処理手順は次のとおりです。1。障害を確認します。Clusternodesコマンドを使用して、ノードステータスを表示します。故障が表示された場合、ノードは失敗します。 2。原因を決定:ネットワーク、ハードウェア、および構成を確認します。一般的な問題には、メモリ制限を超えることが含まれます。 3。修理と復元:サービスの再起動、ハードウェアの交換、構成の変更など、理由に基づいて対策を講じます。 4。注:データの一貫性を確保し、適切なフェイルオーバーポリシーを選択し、監視およびアラームシステムを確立します。

Kucoinは、欧州のリーダーシップチームを完了するために2人の有名な幹部を任命します Kucoinは、欧州のリーダーシップチームを完了するために2人の有名な幹部を任命します Jun 12, 2025 am 10:45 AM

Global Cryptocurrency Exchange Kucoinは最近、欧州のリーダーシップチームの設立を完了し、2人の視聴された幹部を任命しました。この人員の変更は、特に今後のCryptoAsset管理規制(MICAR)に対応して、EU市場でのKucoinの加速レイアウトの一部です。現在、同社は、オーストリア金融市場局(FMA)を通じて関連するライセンスプロセスを推進し、従来の財務と暗号の上級専門家を紹介して管理を強化しています。 Kucoineuは現在、FMAと積極的に通信して、欧州経済圏(EEA)内で完全な暗号通貨サービスを提供することを目的として、完全なコンプライアンス業務を達成しています。この段階では、同社はまだEUまたはEEA内で事業を実施しておらず、対応するライセンスを取得しようとしています。

RedisとRabbitmqの間のパフォーマンス比較と共同アプリケーションシナリオ RedisとRabbitmqの間のパフォーマンス比較と共同アプリケーションシナリオ Jun 04, 2025 pm 08:45 PM

RedisとRabbitmqにはそれぞれ、パフォーマンスと共同アプリケーションのシナリオに独自の利点があります。 1.Redisは、高い並行性シナリオに適した最大マイクロ秒の遅延で、データの読み取りと書き込みで優れたパフォーマンスを発揮します。 2.RabbitMQは、メッセージング、ミリ秒での遅延に焦点を当て、マルチキューおよび消費者モデルをサポートします。 3。共同アプリケーションでは、Redisをデータストレージに使用でき、RabbitMQは非同期タスクを処理し、システムの応答速度と信頼性を向上させます。

See all articles