Optimizavimas naudojant įmontuotas JavaScript funkcijas

Tarkime, programuotojas tikrina, ar masyve yra skaičius 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);

Teigiu, kad su šiuo kodu kažkas ne taip. Kas gi negerai, mes išeiname iš ciklo po to, kai radome skaičių 3? Esmė ta, kad įmontuotos JavaScript funkcijos visada veikia greičiau nei analogiškas savadarbis kodas.

Mūsų atveju egzistuoja funkcija includes, sprendžianti iškeltą uždavinį, - ir naudoti reikia būtent šią funkciją:

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

Moralas: prieš sprendžiant uždavinį būtinai patikrinkite, ar nėra jo sprendimui įmontuotos JavaScript funkcijos.

Задание 1

Tolimesnis kodas tikrina, ar eilutė prasideda 'http'. Atlikite optimizavimą:

javascriptlet str = '';

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

Tolimesnis kodas užpildo masyvą nurodyta reikšme. Atlikite optimizavimą:

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