JavaScript'te Yerleşik Fonksiyonlarla Optimizasyon
Bir programcının, bir dizide
3 sayısının olup olmadığını kontrol ettiğini varsayalım:
let arr = [1, 2, 3, 4, 5, 6, 7, 8, 9];
let exists = false;
for (let elem of arr) {
if (elem === 3) {
exists = true;
break;
}
}
console.log(exists);
Bu kodla bir sorun olduğunu iddia ediyorum.
Sorun ne, 3 sayısını bulduktan sonra
döngüden çıkmıyor muyuz? Sorun şu ki,
JavaScript'teki yerleşik fonksiyonlar her zaman
benzeri kendin yazdığın koddan daha hızlı çalışır.
Bizim durumumuzda, verilen görevi çözen
includes fonksiyonu var - ve kullanılması
gereken tam olarak bu fonksiyondur:
let arr = [1, 2, 3, 4, 5, 6, 7, 8, 9];
console.log(arr.includes(3));
Çıkarılacak ders: Bir görevi çözmeden önce mutlaka JavaScript'te bunun için yerleşik bir fonksiyon olup olmadığını kontrol edin.
Aşağıdaki kod, bir string'in
'http' ile başlayıp başlamadığını kontrol ediyor.
Optimizasyonu gerçekleştirin:
let str = 'http://code.mu';
if (str[0] + str[1] + str[2] + str[3] === 'http') {
console.log('+++');
} else {
console.log('---');
}
Aşağıdaki kod, bir diziyi belirli bir değerle dolduruyor. Optimizasyonu gerçekleştirin:
let arr = fillArr('x', 5);
console.log(arr);
function fillArr(val, amount) {
let arr = [];
for (let i = 1; i <= amount; i++) {
arr.push(val);
}
return arr;
}