Bagaimanakah Anda Boleh Melaksanakan Fungsi Set dalam JavaScript Tanpa Sokongan Terbina dalam?

Mary-Kate Olsen
Lepaskan: 2024-10-28 14:22:02
asal
136 orang telah melayarinya

How Can You Implement Set Functionality in JavaScript Without Built-in Support?

Meniru Set dalam JavaScript

JavaScript tidak menyediakan objek Set terbina dalam, tetapi pembangun selalunya memerlukan keupayaan untuk menyimpan nilai yang unik dan tidak tertib dengan carian pantas, penambahan dan keupayaan pemadaman.

Menggunakan Objek dengan Nilai Boolean:
Seperti yang dicadangkan dalam soalan, objek boleh digunakan untuk meniru set. Kekunci mewakili nilai dan nilai semuanya ditetapkan kepada benar (atau sebarang nilai bukan nol). Pendekatan ini menyediakan carian dan pemadaman pantas, tetapi penambahan menjadi lebih perlahan apabila bilangan kekunci bertambah.

Objek Set ES6:
Jika persekitaran anda menyokong ES6 (cth., penyemak imbas moden atau transpiled kod), anda boleh menggunakan objek Set terbina dalam. Ia mempunyai prestasi yang sangat baik untuk semua operasi yang ditetapkan dan tambahan pula membolehkan lelaran mudah ke atas elemen dan mengelakkan paksaan rentetan.

Polyfills dan Objek Pra-Bina:
Untuk persekitaran yang tidak menyokong ES6, anda boleh menggunakan polyfills seperti "ES6-Set" atau objek pra-bina seperti "miniSet" atau "set.js" yang menyediakan fungsi yang serupa dengan objek Set ES6. Ini menawarkan kelebihan seperti keserasian dengan penyemak imbas lama atau jejak kod yang lebih kecil.

Butiran Pelaksanaan:

Menggunakan Objek:

<code class="javascript">const setObj = {};
setObj["item1"] = true;
if ("item1" in setObj) { // fast lookup
  console.log("Item found");
}
delete setObj["item1"]; // fast deletion</code>
Salin selepas log masuk

Menggunakan Objek Set ES6:

<code class="javascript">const set = new Set();
set.add("item1");
if (set.has("item1")) { // fast lookup
  console.log("Item found");
}
set.delete("item1"); // fast deletion</code>
Salin selepas log masuk

Menggunakan Polyfill:

<code class="javascript">import Set from "es6-set";
const set = new Set(["item1", "item2"]);
console.log(...set.keys()); // easy iteration</code>
Salin selepas log masuk

Menggunakan Pra- Objek Terbina:

<code class="javascript">const miniSet = new MiniSet("item1", "item2");
if (miniSet.has("item1")) { // fast lookup
  console.log("Item found");
}
miniSet.remove("item1"); // fast deletion</code>
Salin selepas log masuk

Pilihan terbaik bergantung pada keperluan khusus dan sokongan yang tersedia dalam persekitaran anda. Untuk aplikasi yang kompleks atau kritikal prestasi, objek Set ES6 adalah ideal. Jika tidak, menggunakan objek, polyfill atau objek set pra-bina boleh memberikan penyelesaian yang munasabah.

Atas ialah kandungan terperinci Bagaimanakah Anda Boleh Melaksanakan Fungsi Set dalam JavaScript Tanpa Sokongan Terbina dalam?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
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
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!