Optimizācija, izmantojot iebūvētās funkcijas JavaScript

Lai kāds programmētājs pārbauda, vai massīvā atrodas skaitlis 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);

Es apgalvoju, ka ar šo kodu kaut kas nav kārtībā. Kas tad ir nepareizi, mēs taču izietam no cikla pēc tam, kad atradām skaitli 3? Lieta ir tāda, ka JavaScript iebūvētās funkcijas vienmēr strādā ātrāk nekā līdzvērtīgs pašrakstīts kods.

Mūsu gadījumā pastāv funkcija includes, kas atrisina uzdevumu, - un lietot tieši šī funkcija ir nepieciešams:

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

Moral: pirms uzdevuma risināšanas noteikti pārbaudiet, vai tā atrisināšanai nepastāv iebūvēta JavaScript funkcija.

Задание 1

Šāds kods pārbauda, vai virkne sākas ar 'http'. Veiciet optimizāciju:

javascriptlet str = '';

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

Šāds kods aizpilda massīvu ar noteiktu vērtību. Veiciet optimizāciju:

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