JavaScript-те массивке түрлендіруді оңтайландыру
Әрқашан жолды бірнәрсе жасау үшін массивке бөлудің қажеті жоқ. Мысалға тоқталайық. Бізде келесі код бар делік:
let num = 123456789;
let arr = String(num).split('');
let sum = 0;
for (let elem of arr) {
sum += +elem;
}
console.log(sum);
Бұл жерде массивке бөлу неге жаман? Себебі біріншіден, массивке бөлуге процессор ресурстары жұмсалады, екіншіден, алынған массив жедел жад орнын алады (және бұл орын жолдың өзі алатын орыннан көп болады).
Ал шындығында for-of
арқылы тек массивтерді ғана емес,
сонымен қатар жолдарды да айналуға болады:
let num = 123456789;
let str = String(num);
let sum = 0;
for (let char of str) {
sum += +char;
}
console.log(sum);
Келесі код инпутқа енгізілген санның цифрларының қосындысын іздейді. Оңтайландыруды орындаңыз:
<input>
let input = document.querySelector('input');
input.addEventListener('blur', function() {
let digits = input.value.split('');
let sum = 0;
for (let digit of digits) {
sum += +digit;
}
console.log(sum);
});
Келесі код жолдағы әріптердің санын санайды. Оңтайландыруды орындаңыз:
let str = 'abcaab';
let arr = str.split('');
let i = 0;
for (let elem of arr) {
if (elem == 'a') {
i++;
}
}
console.log(i);
Келесі код жолдағы символдың бар-жоғын тексереді. Оңтайландыруды орындаңыз:
let str = 'abcaab';
let arr = str.split('');
console.log(arr.includes('a'));