Rumah > hujung hadapan web > tutorial js > Kaedah Array JavaScript: Sort, Peta, Penapis, dan Kurangkan

Kaedah Array JavaScript: Sort, Peta, Penapis, dan Kurangkan

Susan Sarandon
Lepaskan: 2025-01-29 02:30:37
asal
498 orang telah melayarinya

JavaScript Array Methods: Sort, Map, Filter, and Reduce

menguasai kaedah array JavaScript: menyusun, pemetaan, penapisan, dan peraturan untuk meningkatkan kecekapan pembangunan web anda! Artikel ini membincangkan kaedah

, sort, map dan filter dari array JavaScript, dan menyediakan contoh praktikal untuk membantu anda mahir dalam pemprosesan data. reduce

  1. array.prototype.sort

    kaedah penyortiran

  2. kaedah mengatur elemen array mengikut urutan yang ditentukan. Secara lalai, ia menyusun elemen rentetan dalam urutan berurutan kamus. Tetapi melalui fungsi perbandingan tersuai, anda boleh mencapai logik penyortiran yang lebih rumit.

Tatabahasa sort

: Tentukan fungsi perintah jenis. Ia menerima dua parameter (a, b) dan pulangan:

<code class="language-javascript">array.sort([compareFunction])</code>
Salin selepas log masuk
Salin selepas log masuk
Nilai Negatif: Jika A harus disenaraikan sebelum B.
  • sifar: jika a dan b sama. compareFunction
      Nilai positif: Jika A harus disenaraikan di belakang B.
    • Contoh: Susun nombor dalam urutan berurutan
  • Contoh: Sort dengan objek penyortiran atribut

<code class="language-javascript">const numbers = [42, 7, 19, 73, 23];

numbers.sort((a, b) => a - b);

console.log(numbers); // 输出:[7, 19, 23, 42, 73]</code>
Salin selepas log masuk
Salin selepas log masuk
Kaedah mengubah suai array asal.

Untuk nombor atau penyortiran kompleks, perlu menyediakan fungsi perbandingan untuk mengelakkan kemalangan.
<code class="language-javascript">const books = [
  { title: 'Book A', year: 2001 },
  { title: 'Book B', year: 1998 },
  { title: 'Book C', year: 2015 }
];

books.sort((a, b) => a.year - b.year);

console.log(books); // 输出:按年份升序排列的书籍数组</code>
Salin selepas log masuk
Salin selepas log masuk
  • sort
  • array.prototype.map
  • kaedah peta
    Kaedah
  1. Buat array baru dengan menggunakan fungsi yang disediakan untuk setiap elemen array asal. Ia sering digunakan dalam penukaran data.

    Tatabahasa

  2. : Untuk fungsi yang dilakukan oleh setiap elemen, terima:

elemen semasa. map

Indeks Elemental.

array asal.
<code class="language-javascript">array.map(callback(element, index, array))</code>
Salin selepas log masuk
  • callback
      Contoh: Tukar array nombor
    • Contoh: Data format
    Kaedah ini tidak akan mengubah suai array asal, dan ia mengembalikan array baru.
Ia sangat sesuai untuk penukaran struktur data.

<code class="language-javascript">const numbers = [1, 2, 3, 4, 5];

const squares = numbers.map(num => num ** 2);

console.log(squares); // 输出:[1, 4, 9, 16, 25]</code>
Salin selepas log masuk

array.prototype.filter
<code class="language-javascript">const users = [
  { firstName: 'John', lastName: 'Doe' },
  { firstName: 'Jane', lastName: 'Smith' }
];

const fullNames = users.map(user => `${user.firstName} ${user.lastName}`);

console.log(fullNames); // 输出:['John Doe', 'Jane Smith']</code>
Salin selepas log masuk
kaedah penapis
  • map
  • Buat array baru, yang hanya mengandungi unsur -unsur yang memenuhi syarat -syarat yang diberikan. Ia sering digunakan untuk mengekstrak subset data.
  • Tatabahasa
  1. : Tentukan sama ada ia harus mengandungi fungsi (kembali benar) atau tidak termasuk (belakang palsu) elemen.

    Contoh: Tapis nombor juga

Contoh: Tapis objek mengikut keadaan

filter

Kaedah

tidak akan mengubah suai array asal.

<code class="language-javascript">array.filter(callback(element, index, array))</code>
Salin selepas log masuk
Ia adalah alat yang berkuasa untuk mengekstrak data yang berkaitan atau membersihkan tatasusunan.
  • callback
array.prototype.reduce

kaedah patung

<code class="language-javascript">const numbers = [1, 2, 3, 4, 5, 6];

const evens = numbers.filter(num => num % 2 === 0);

console.log(evens); // 输出:[2, 4, 6]</code>
Salin selepas log masuk

Kaedah ini menggunakan fungsi untuk setiap elemen (dari kiri ke kanan) penumpuk dan array, dan menyifatkannya kepada satu nilai.

Tatabahasa

<code class="language-javascript">array.sort([compareFunction])</code>
Salin selepas log masuk
Salin selepas log masuk
    : Untuk fungsi setiap elemen, parameter adalah:
  • callback Cumulator.
    • elemen semasa.
    • indeks elemen semasa.
    • array asal.
    : Nilai awal penumpuk (pilihan, tetapi disyorkan).
  • initialValue Contoh: Mencari Keamanan

Contoh: Data kumpulan mengikut atribut

<code class="language-javascript">const numbers = [42, 7, 19, 73, 23];

numbers.sort((a, b) => a - b);

console.log(numbers); // 输出:[7, 19, 23, 42, 73]</code>
Salin selepas log masuk
Salin selepas log masuk

Kaedah ini sangat fleksibel dan boleh menjana array, objek atau nilai tunggal.
<code class="language-javascript">const books = [
  { title: 'Book A', year: 2001 },
  { title: 'Book B', year: 1998 },
  { title: 'Book C', year: 2015 }
];

books.sort((a, b) => a.year - b.year);

console.log(books); // 输出:按年份升序排列的书籍数组</code>
Salin selepas log masuk
Salin selepas log masuk
    Ini adalah alat yang berkuasa untuk penukaran tersuai, pengagregatan data, dll.
  • reduce Sentiasa memberikan nilai awal untuk mendapatkan ramalan yang lebih baik.
  • gabungan kaedah
  • Dengan menggabungkan ,
  • , dan
kaedah, kecekapan pemprosesan data dapat dioptimumkan, terutama ketika berurusan dengan set data yang besar, elakkan beberapa lelaran untuk meningkatkan prestasi.

Kesimpulan

JavaScript's map, filter, reduce, dan

kaedah adalah kritikal untuk operasi data yang cekap dan elegan. Memahami mekanisme dan aplikasi mereka dapat membantu pemaju menulis lebih ringkas dan mudah -untuk kod -kod. Berlatih lebih banyak dan mahir dalam kaedah ini!

Atas ialah kandungan terperinci Kaedah Array JavaScript: Sort, Peta, Penapis, dan Kurangkan. 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