Rumah >hujung hadapan web >tutorial js >Bagaimana untuk Mencari dan Menggantikan Objek dalam Tatasusunan JavaScript Berdasarkan Harta Tertentu?

Bagaimana untuk Mencari dan Menggantikan Objek dalam Tatasusunan JavaScript Berdasarkan Harta Tertentu?

Patricia Arquette
Patricia Arquetteasal
2024-11-28 14:26:12216semak imbas

How to Find and Replace an Object in a JavaScript Array Based on a Specific Property?

Mencari Objek dengan Sifat Tertentu dalam Susunan Objek

Dalam Javascript, tatasusunan objek yang tidak dinamakan boleh dicari untuk sesuatu tertentu objek berdasarkan padanan nilai harta. Pertimbangkan tatasusunan berikut:

var array = [
    { name:"string 1", value:"this", other: "that" },
    { name:"string 2", value:"this", other: "that" }
];

Mencari Objek:

Untuk mencari objek dengan sifat "nama" yang ditetapkan kepada "rentetan 1", gunakan find () kaedah. Sintaksnya ialah:

let obj = arr.find(o => o.name === 'string 1');

Kod ini berulang melalui tatasusunan dan mengembalikan objek pertama dengan syarat o.name === 'rentetan 1' adalah benar. Obj yang terhasil akan mengandungi data berikut:

{ name:"string 1", value:"this", other: "that" }

Menggantikan Objek Ditemui:

Setelah objek ditemui, ia boleh digantikan dengan versi yang diedit. Untuk melakukan ini, gunakan kaedah findIndex() untuk mendapatkan indeks objek dalam tatasusunan:

let index = array.findIndex(o => o.name === 'string 1');

Kemudian, gunakan kaedah splice() tatasusunan untuk menggantikan objek pada indeks itu:

array.splice(index, 1, { new_name: "string 1", new_value: "updated" });

Kini, tatasusunan akan mengandungi objek yang dikemas kini:

[
    { name:"string 1", value:"updated", other: "that" },
    { name:"string 2", value:"this", other: "that" }
]

Atas ialah kandungan terperinci Bagaimana untuk Mencari dan Menggantikan Objek dalam Tatasusunan JavaScript Berdasarkan Harta Tertentu?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn