Rumah  >  Artikel  >  hujung hadapan web  >  Tulis fungsi yang menapis semua nilai palsu daripada tatasusunan yang diberikan.

Tulis fungsi yang menapis semua nilai palsu daripada tatasusunan yang diberikan.

王林
王林asal
2024-08-11 08:43:32301semak imbas

Write a function that filters out all the falsy values from a given array.

 const removeFalsyValues = (arr) => {
    let truthy = []

    for(let i = 0; i < arr.length; i++){
      if(arr[i]) {
        truthy.push(arr[i])
      }
    }

    return truthy;

  }

  console.log('removeFalsyValues:', removeFalsyValues([0, 1, false, 2, "", 3, undefined, NaN, null]))

Nilai palsu dalam JavaScript ialah nilai yang dianggap palsu apabila dinilai dalam konteks Boolean. Ini termasuk0, palsu, "" (rentetan kosong), tidak ditentukan, NaN dan nol.

Begini cara fungsi berfungsi:

  • Memulakan tatasusunan kosong: Fungsi bermula dengan mencipta tatasusunan kosong yang dipanggil truthy. Ini akan digunakan untuk menyimpan nilai daripada tatasusunan asal yang tidak palsu.
  • Gelung melalui tatasusunan: Fungsi menggunakan gelung for untuk melalui setiap elemen dalam susunan tatasusunan input.
  • Semak sama ada elemen itu benar: Di dalam gelung, terdapat pernyataan if yang menyemak sama ada elemen semasa (arr[i]) adalah benar. Jika elemen itu benar (bermaksud ia bukan salah satu nilai palsu), ia akan ditambahkan pada tatasusunan yang benar.
  • Kembalikan tatasusunan truthy: Selepas gelung telah melalui semua elemen, fungsi mengembalikan tatasusunan truthy, yang kini hanya mengandungi nilai truthy.
  • Tatasusunan input ialah [0, 1, false, 2, "", 3, undefined, NaN, null].
  • Fungsi ini akan melingkari setiap elemen dan mengalih keluar yang palsu (0, false, "", undefined, NaN, null).
  • Nilai kebenaran yang selebihnya (1, 2, 3) dikembalikan dalam tatasusunan baharu:[1, 2, 3].

Jadi, output kod ini ialah:removeFalsyValue [1, 2, 3].

Atas ialah kandungan terperinci Tulis fungsi yang menapis semua nilai palsu daripada tatasusunan yang diberikan.. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
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