Pelajaran modul (3/4)
temukan, beberapa, setiap
Tiga metode ringkas untuk menelusuri dalam array tanpa menulis perulangan secara manual.
find: yang pertama cocok
const utenti = [
{ nome: 'Anna', eta: 30 },
{ nome: 'Luca', eta: 12 },
{ nome: 'Sara', eta: 18 },
];
utenti.find((u) => u.eta >= 18);
// { nome: 'Anna', eta: 30 }
utenti.find((u) => u.nome === 'Marco');
// undefined ← if none matchesVarian findIndex: mengembalikan indeks (atau -1).
some: setidaknya satu
const nums = [1, 2, 3, 4, 5];
nums.some((n) => n > 4); // true
nums.some((n) => n > 100); // false
[].some(() => true); // false ← on an empty array it is always falseevery: semuanya
const nums = [1, 2, 3, 4, 5];
nums.every((n) => n > 0); // true
nums.every((n) => n > 2); // false
[].every(() => false); // true ← on an empty array it is always true!Asimetri some dan every pada array kosong disengaja dan konsisten secara logis dengan
operator logika "ada" (∃) dan "untuk semua" (∀).
Cobalah
Tentukan `firstAdult(users)`: jika diberi array { name, age }, kembalikan nama yang pertama dengan age >= 18, atau null jika tidak ada. Gunakan temukan.
Tunjukkan petunjuk
pengguna.find(...); jika ditemukan kembalikan nama u., jika tidak, batal.
Solusi tersedia setelah 3 upaya
Tinjau latihan
Definisikan `allPositive(nums)`: kembalikan nilai true jika semua elemen nums > 0 (dan array TIDAK kosong), jika tidak maka akan salah. Gunakan setiap + pemeriksaan panjang.
Tunjukkan petunjuk
panjang > 0 && angka.setiap(n => n > 0)
Solusi tersedia setelah 3 upaya