Rumah > hujung hadapan web > tutorial js > Bagaimanakah Saya Boleh Mengira Nilai Pendua dengan Cekap dalam Tatasusunan JavaScript?

Bagaimanakah Saya Boleh Mengira Nilai Pendua dengan Cekap dalam Tatasusunan JavaScript?

Barbara Streisand
Lepaskan: 2024-12-03 06:21:09
asal
641 orang telah melayarinya

How Can I Efficiently Count Duplicate Values in a JavaScript Array?

Mengira Nilai Pendua dalam Tatasusunan dengan JavaScript

Dalam pengaturcaraan, selalunya perlu untuk mengenal pasti dan mengira nilai pendua dalam tatasusunan. Mari kita pertimbangkan tatasusunan seperti itu:

var uniqueCount = Array();
Salin selepas log masuk

Selepas beberapa operasi, tatasusunan kini memegang:

uniqueCount = [a,b,c,d,d,e,a,b,c,f,g,h,h,h,e,a];
Salin selepas log masuk

Matlamat kami adalah untuk mengira berapa banyak kejadian setiap nilai unik wujud dalam tatasusunan ini . Kami menyasarkan hasil seperti:

a = 3
b = 1
c = 2
d = 2
Salin selepas log masuk

Satu cara berkesan untuk mengira pendua dalam JavaScript adalah melalui penggunaan objek. Mari kita terokai penyelesaian ini:

const counts = {};
const sampleArray = ['a', 'a', 'b', 'c'];
sampleArray.forEach(function (x) { counts[x] = (counts[x] || 0) + 1; });
console.log(counts);
Salin selepas log masuk

Kod ini menggunakan objek bernama kiraan untuk menyimpan kekerapan setiap nilai dalam sampleArray. Kaedah forEach bergelung melalui tatasusunan, dan untuk setiap nilai yang ditemui, objek kiraan dikemas kini. Jika nilai sudah ada dalam objek, kiraannya akan ditambah; jika tidak, ia dimulakan kepada satu. Akhir sekali, objek kiraan dilog ke konsol, memberikan output yang diingini:

{ a: 2, b: 1, c: 1 }
Salin selepas log masuk

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Mengira Nilai Pendua dengan Cekap dalam Tatasusunan JavaScript?. 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