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