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