Rumah > Artikel > hujung hadapan web > JavaScript menggantikan kunci objek
Dalam pengaturcaraan JavaScript, operasi objek adalah keperluan yang sangat biasa. Selalunya perlu menukar nama kunci tertentu dalam objek. Walaupun JavaScript menyediakan banyak cara berbeza untuk memanipulasi objek, menggantikan kunci objek dengan kunci baharu boleh mencabar.
Dalam artikel ini, kita akan melihat beberapa cara berbeza untuk menggantikan kekunci objek dengan kekunci baharu dalam JavaScript. Kami akan membincangkan aspek berikut:
Apakah itu Object Key Penggantian
Penggantian Kunci Objek ialah operasi yang membolehkan kami menukar nama kunci tertentu dalam objek JavaScript. Ini berguna apabila anda perlu mendapatkan beberapa nilai daripada objek. Contohnya, apabila mendapatkan semula data objek melalui API, anda mungkin perlu memadankan kunci objek data yang dikembalikan dengan kunci yang digunakan dalam stor data setempat.
Cara menggantikan kekunci objek dalam JavaScript
Terdapat banyak cara berbeza untuk menggantikan kunci objek dalam JavaScript. Tiga kaedah yang paling biasa digunakan diterangkan di bawah.
const obj = { oldName: "value" }; obj.newName = obj.oldName; delete obj.oldName;
Dalam coretan kod di atas, kami melaksanakan penggantian kunci objek dengan mencipta nama kunci baharu, menyalin nilai nama kunci lama dan kemudian memadamkan nama kunci lama.
const obj = { oldName: "value" }; Object .keys(obj) .forEach(key => { if (key === "oldName") { obj.newName = obj[key]; delete obj[key]; } });
Gunakan Object.keys() secara setempat untuk mendapatkan kekunci daripada objek, kemudian gunakan pernyataan if untuk menyemak sama ada setiap kekunci sepadan dengan nama yang ingin anda ubah. Jika terdapat padanan, nilai akan disalin ke dalam kunci baharu dan kunci lama dipadamkan.
const obj = { oldName: "value" }; const newObj = {}; newObj.newName = obj.oldName; delete newObj.oldName;
Menggunakan kaedah Object.assign() ES6 untuk penggantian kunci
Menggunakan kaedah Object.assign() ES6 dan parameternya yang tersedia, kami boleh melakukan kekunci objek JavaScript dengan cekap Tugas penggantian. Object.assign() ialah kaedah yang menyalin objek sumber ke dalam objek sasaran dan mengembalikan objek sasaran. Oleh itu, kami boleh menghantar objek sumber dengan kunci baharu sebagai parameter untuk melaksanakan penggantian.
const obj = { oldName: "value" }; const newObj = Object.assign({}, obj, {newName: obj.oldName}); delete newObj.oldName;
Di sini, kami menggunakan Object.assign() untuk mencipta objek baharu dan menggunakan objek lama serta sifatnya sebagai objek sumber. Kemudian, menggunakan nama kunci baharu sebagai hujah yang berasingan, nyatakan nama itu sebagai sepadan dengan nama kunci lama yang ingin anda alih keluar. Akhirnya, penggantian kunci selesai dengan memadamkan kunci lama.
Gunakan kaedah pemusnahan objek ES6 untuk menggantikan kunci
Pemusnahan objek dalam ES6 menyediakan cara lain untuk menggantikan kunci objek JavaScript. Pemusnahan objek ialah kaedah memusnahkan sifat objek kepada pembolehubah berasingan, yang boleh mempunyai nama baharu (pembolehubah alias). Dengan menggunakan kunci baharu sebagai alias, kami boleh menjana operasi penggantian kunci yang diingini dengan memadamkan kunci lama.
const obj = { oldName: "value" }; const {oldName:newName, ...newObj} = obj;
Di sini, kami mengisytiharkan objek baharu dan mengalihkan semua sifat objek yang dikendalikan ke objek baharu melalui tugasan memusnahkan. Kami alias kekunci lama ke objek baharu dengan menggunakan "…" (pengendali penyebaran). Dengan cara ini, sintaks pemusnah sebenarnya membolehkan kami memberikan objek sasaran kami nama baharu untuk sebarang kunci sasaran (dipanggil alias).
Gunakan kaedah Object.entry() dan Object.fromEntries() untuk penggantian kunci
Object.entry() dan Object.fromEntries() ialah teknologi terkini, yang diperkenalkan dalam ES2019 . Kaedah ini menjadikannya sangat mudah untuk melakukan penggantian kunci objek.
const obj = { oldName: "value" }; const newObj = Object.fromEntries( Object.entries(obj) .map(([k, v]) => [k === "oldName" ? "newName" : k, v]) );
Di sini, kami menggunakan kaedah Object.entry() untuk mendapatkan senarai pasangan nilai kunci objek. Kami mengubah senarai ini menggunakan kaedah map(), menggantikan kekunci lama dengan kekunci baharu jika ia sepadan, dan kemudian menambah setiap pasangan nilai kunci baharu kepada objek baharu. Tukar senarai elemen yang ditukar kepada objek pasangan nilai kunci baharu menggunakan kaedah Object.fromEntries().
Kesimpulan
Penggantian kunci objek adalah sangat biasa untuk bekerja dengan data objek JavaScript. Kami melihat bahawa JavaScript menyediakan beberapa cara berbeza untuk mencapai ini melalui penggantian kunci objek JavaScript. Sangat mudah untuk memadam dan menamakan semula kunci dalam objek JavaScript menggunakan kaedah standard ES6. Untuk ini, kita boleh menggunakan kaedah Object.assign(), penstrukturan objek, Object.keys() dan Object.entry() kaedah. Semua strategi ini mengejar prestasi maksimum, kemudahan penggunaan dan kebolehbacaan.
Atas ialah kandungan terperinci JavaScript menggantikan kunci objek. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!