Оптимизација преку вградени функции во JavaScript
Нека некој програмер проверува дали
во низата се наоѓа бројот 3:
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);
Тврдам дека нешто не е во ред со овој код.
Што не е во ред, ние излегуваме од јамката
откако го најдовме бројот 3? Работата е во тоа,
што вградените функции во JavaScript секогаш
работат побрзо од сличен код напишан од нула.
Во нашиот случај постои функцијата includes,
која ја решава поставената задача, - и треба да се користи
токму оваа функција:
let arr = [1, 2, 3, 4, 5, 6, 7, 8, 9];
console.log(arr.includes(3));
Морал: пред решавање на задачата задолжително проверете дали не постои вградена функција во JavaScript за нејзино решавање.
Следниов код проверува дали стрингот
започнува со 'http'.
Извршете оптимизација:
let str = 'http://code.mu';
if (str[0] + str[1] + str[2] + str[3] === 'http') {
console.log('+++');
} else {
console.log('---');
}
Следниов код ја пополнува низата со зададена вредност. Извршете оптимизација:
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;
}