Modül dersleri (3/4)
ara ver ve devam et
Bir döngü içinde iki çok yararlı küçük kelime:
breaken içteki döngüden hemen çıkar.continuegövdenin geri kalanını çalıştırmadan bir sonraki yinelemeye atlar.
break: erken çık
"Bir koşulu karşılayan ilkini bul" için tipik:
function primoNegativo(nums) {
for (const n of nums) {
if (n < 0) return n; // o: result = n; break;
}
return undefined;
}
primoNegativo([3, 7, -2, 4, -9]); // -2Açıkça break içeren örnek:
let trovato = -1;
const nums = [10, 20, 30, 40, 50];
for (let i = 0; i < nums.length; i++) {
if (nums[i] === 30) {
trovato = i;
break;
}
}
trovato; // 2continue: sonrakine atla
Bir öğe ilgi çekici olmadığı halde döngüye devam etmek istediğinizde:
function sommaPari(nums) {
let totale = 0;
for (const n of nums) {
if (n % 2 !== 0) continue; // salta i dispari
totale += n;
}
return totale;
}
sommaPari([1, 2, 3, 4, 5, 6]); // 12Çoğu durumda if (cond) { ... } eşdeğer olacaktır; continue vücut uzun olduğunda yardımcı olur
ve akışı düz tutmak istiyorsunuz (biraz iç içe geçme).
Deneyin
Nums'un ilk öğesini eşikten kesinlikle büyük veya eşikten büyük değilse tanımsız döndüren 'firstGreater(nums, eşik)'i tanımlayın. Mola (veya hemen geri dönüş) kullanın.
İpucu göster
for'un içindeki bir dönüş, aynı anda break + return olarak çalışır.
3 denemeden sonra çözüm mevcut
Alıştırmayı gözden geçirin
Tam sıfırlar dışındaki tüm öğeleri toplayan 'sumSkippingZeros(nums)'ı tanımlayın. Devam et seçeneğini kullanın.
İpucu göster
Eğer n === 0 ise devam edin; aksi halde birikir.
3 denemeden sonra çözüm mevcut