Օպտիմիզացիա ներդրված ֆունկցիաների միջոցով JavaScript-ում

Ենթադրենք՝ ինչ-որ ծրագրավորող ստուգում է՝ արդյոք զանգվածում կա 3 թիվը.

javascriptlet 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 ֆունկցիան, որը լուծում է տրված խնդիրը, և օգտագործել պետք է հենց այդ ֆունկցիան.

javascriptlet arr = [1, 2, 3, 4, 5, 6, 7, 8, 9];
console.log(arr.includes(3));

Բարոյականություն. խնդիրը լուծելուց առաջ անպայման ստուգեք՝ արդյոք դրա լուծման համար գոյություն ունի JavaScript-ի ներդրված ֆունկցիա:

Задание 1

Հետևյալ կոդը ստուգում է՝ արդյոք տողը սկսվում է 'http'-ով: Կատարեք օպտիմիզացիա.

javascriptlet str = '';

if (str[0] + str[1] + str[2] + str[3] === 'http') {
  console.log('+++');
} else {
  console.log('---');
}
Задание 2

Հետևյալ կոդը լցնում է զանգվածը տրված արժեքով: Կատարեք օպտիմիզացիա.

javascriptlet 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;
}