Rumah > hujung hadapan web > tutorial js > Mengesyorkan dua kaedah untuk menyahduplikasi kemahiran arrays_javascript JavaScript

Mengesyorkan dua kaedah untuk menyahduplikasi kemahiran arrays_javascript JavaScript

WBOY
Lepaskan: 2016-05-16 15:06:36
asal
1437 orang telah melayarinya

1. Deduplikasi tatasusunan; Jenis Tatasusunan tidak menyediakan kaedah untuk mengalih keluar pendua Jika anda ingin mengalih keluar elemen pendua daripada tatasusunan, anda perlu mencari jalan sendiri:

Kaedah 1: Gunakan kaedah indexOf;

var aa=[1,3,5,4,3,3,1,4]
function arr(arr) {
  var result=[]
  for(var i=0; i<arr.length; i++){
    if(result.indexOf(arr[i])==-1){
      result.push(arr[i])
    }
  }
  console.log(result)
}      
arr(aa)
Salin selepas log masuk
Kaedah 2:

function unique(arr) {
  var result = [], isRepeated;
  for (var i = 0, len = arr.length; i < len; i++) {
    isRepeated = false;
    for (var j = 0, len = result.length; j < len; j++) {
      if (arr[i] == result[j]) {  
        isRepeated = true;
        break;
      }
    }
    if (!isRepeated) {
      result.push(arr[i]);
    }
  }
  return result;
}
Salin selepas log masuk
Kaedah 2,

Idea umum adalah untuk memindahkan elemen tatasusunan ke tatasusunan lain satu demi satu Semasa proses pemindahan, semak sama ada elemen itu diduakan, dan jika ya, buang terus. Seperti yang dapat dilihat dari gelung bersarang, kaedah ini sangat tidak cekap. Kita boleh menggunakan struktur hashtable untuk merekod elemen sedia ada, supaya kita boleh mengelakkan gelung dalaman. Kebetulan melaksanakan jadual hash dalam Javascript adalah sangat mudah

Dua kaedah yang disyorkan di atas untuk menyahduplikasi tatasusunan JavaScript adalah semua kandungan yang dikongsi oleh editor. Saya harap ia boleh memberi anda rujukan, dan saya harap anda akan menyokong Script Home.
Label berkaitan:
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
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan