ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 자바스크립트 표준 빌트인 객체 정리: 코딩 테스트 필수 지식
    Javascript 2024. 8. 24. 11:01

    서론

    최근 오랜만에 코딩 테스트에 도전하게 되었습니다.

     

    현업에 종사하면서 거의 코딩을 잊고 살았던 터라, 약 5년 만에 다시 코딩 테스트를 보게 된 거죠.

     

    처음에는 간단한 알고리즘 문제부터 연습해 보았는데, 오랜 시간 자동 완성 기능에 의존했던 탓인지 기본적인 문법을 직접 작성하는 데 어려움을 겪었습니다.

     

    하지만 문제를 하나씩 풀어나가면서 감각을 되찾기 시작했습니다.

     

    그런데, 빌트인 함수를 까먹고 있었던 탓에 빌트인 함수를 사용하지 않고 코드를 작성하다 보니 코드가 길어지고 가독성이 떨어지는 것은 물론, 성능까지 저하되는 것을 깨달았습니다.

     

    모든 빌트인 함수를 다 외우는 것은 현실적으로 불가능하지만, 코딩 테스트에서 자주 사용되는 함수들은 정리해 두는 것이 좋겠다고 생각했습니다.

     

    이 글에서는 코딩 테스트에서 자주 활용되는 자바스크립트 표준 빌트인 객체들을 정리하고, 각 객체의 주요 메서드와 사용 예시를 통해 익혀보도록 하겠습니다.

     

    코딩 테스트에서 자주 사용되는 자바스크립트 표준 빌트인 객체

    1. 문자열 관련

    1.1 문자열 잘라내기
    • substr
      • 지정한 위치부터 지정한 길이만큼의 문자열을 반환합니다.
      • substr(원본 문자열, 시작 위치, 길이)
      • 예시:
      let str = "Hello, World!";
      let result = str.substr(7, 5);
      console.log(result); // 출력: World
    • substring
      • 지정한 시작 위치부터 끝 위치까지의 문자열을 반환합니다.
      • substring(시작 위치, 끝 위치)
      • 예시:
      let str = "Hello, World!";
      let result = str.substring(7, 12);
      console.log(result); // 출력: World
    • slice
      • 지정한 시작 위치부터 끝 위치까지의 부분 배열 또는 문자열을 반환합니다.
      • slice(시작 위치, 끝 위치)
      • 예시:
      let arr = [1, 2, 3, 4, 5];
      let result = arr.slice(1, 4);
      console.log(result); // 출력: [2, 3, 4]
    1.2 대소문자 변환
    • toUpperCase
      • 문자열 내 모든 문자를 대문자로 변환합니다.
      • 예시:
      let str = "Hello, World!";
      let upperStr = str.toUpperCase();
      console.log(upperStr); // 출력: HELLO, WORLD!
    • toLowerCase
      • 문자열 내 모든 문자를 소문자로 변환합니다.
      • 예시:
      let str = "Hello, World!";
      let lowerStr = str.toLowerCase();
      console.log(lowerStr); // 출력: hello, world!
    1.3 검색
    • indexOf
      • 문자열 내에서 지정된 문자열이 처음 나타나는 위치를 반환합니다.
      • indexOf(검색할 문자열 또는 문자, 검색을 시작할 위치 (기본값은 0))
      • 예시:
      let str = "Hello, World!";
      let index = str.indexOf("World");
      console.log(index); // 출력: 7
    • includes
      • 문자열 내에 지정된 문자열이 포함되어 있는지 확인합니다.
      • includes(검색할 문자열 또는 문자, 검색을 시작할 위치 (기본값은 0))
      • 예시:
      let str = "Hello, World!";
      let contains = str.includes("World");
      console.log(contains); // 출력: true
    1.4 변환
    • replace
      • 문자열 내에서 지정된 부분 문자열 또는 정규 표현식과 일치하는 첫 번째 부분을 교체합니다.
      • replace(교체할 부분 문자열 또는 정규 표현식, 교체할 문자열)
      • 예시:
      let str = "Hello, World!";
      let newStr = str.replace("World", "JavaScript");
      console.log(newStr); // 출력: Hello, JavaScript!
    • split
      • 지정한 구분 문자 또는 정규 표현식으로 문자열을 분할하고, 분할된 부분을 요소로 하는 배열을 반환합니다.
      • split(분할 기준이 되는 문자열 또는 정규 표현식)
      • 예시:
      let str = "apple,banana,cherry";
      let fruits = str.split(",");
      console.log(fruits); // 출력: ["apple", "banana", "cherry"]
    • repeat
      • 문자열을 지정한 횟수만큼 반복하여 새로운 문자열을 반환합니다.
      • repeat(반복 횟수 (0 이상의 정수))
      • 예시:
      let str = "Hello";
      let repeatedStr = str.repeat(3);
      console.log(repeatedStr); // 출력: HelloHelloHello
    • toString
      • 문자열을 반환합니다.
      • 예시:
      let num = 123;
      let str = num.toString();
      console.log(str); // 출력: "123"

    2. 배열 관련

    2.1 요소 추가 및 삭제
    • push
      • 배열의 맨 끝에 하나 이상의 요소를 추가합니다.
      • push(추가할 요소)
      • 예시:
      let arr = [1, 2, 3];
      arr.push(4, 5);
      console.log(arr); // 출력: [1, 2, 3, 4, 5]
    • pop
      • 배열의 맨 끝에서 하나의 요소를 삭제하고, 삭제된 요소를 반환합니다.
      • 예시:
      let arr = [1, 2, 3, 4];
      let removed = arr.pop();
      console.log(removed); // 출력: 4
      console.log(arr); // 출력: [1, 2, 3]
    • shift
      • 배열의 맨 앞에서 하나의 요소를 삭제하고, 삭제된 요소를 반환합니다.
      • 예시:
      let arr = [1, 2, 3];
      let removed = arr.shift();
      console.log(removed); // 출력: 1
      console.log(arr); // 출력: [2, 3]
    • unshift
      • 배열의 맨 앞에 하나 이상의 요소를 추가합니다.
      • unshift(추가할 요소)
      • 예시:
      let arr = [2, 3];
      arr.unshift(0, 1);
      console.log(arr); // 출력: [0, 1, 2, 3]
    • concat
      • 하나 이상의 배열 또는 값을 결합하여 새로운 배열을 반환합니다.
      • concat(결합할 배열 또는 값)
      • 예시:
      let arr1 = [1, 2];
      let arr2 = [3, 4];
      let combined = arr1.concat(arr2, 5);
      console.log(combined); // 출력: [1, 2, 3, 4, 5]
    • new Set
      • 중복되지 않는 값의 집합을 관리합니다.
      • Set(값)
      • 예시:
      let set = new Set([1, 2, 2, 3, 4]);
      console.log(set); // 출력: Set { 1, 2, 3, 4 }
    2.2 배열 순회
    • forEach
      • 배열의 각 요소에 대해 지정한 함수를 실행합니다.
      • forEach(콜백 함수(요소, 인덱스, 배열))
      • 예시:
      let arr = [1, 2, 3];
      arr.forEach((element, index) => {
        console.log(`Index ${index}: ${element}`);
      });
      // 출력:
      // Index 0: 1
      // Index 1: 2
      // Index 2: 3
    • map
      • 배열의 각 요소를 변환하여 새로운 배열을 반환합니다.
      • map(콜백 함수(요소, 인덱스, 배열))
      • 예시:
      let arr = [1, 2, 3];
      let doubled = arr.map(element => element * 2);
      console.log(doubled); // 출력: [2, 4, 6]
    • reduce
      • 배열의 모든 요소를 하나의 값으로 누적합니다.
      • reduce(콜백 함수(누적 값, 요소, 인덱스, 배열), 초기 값)
      • 예시:
      let arr = [1, 2, 3];
      let sum = arr.reduce((accumulator, element) => accumulator + element, 0);
      console.log(sum); // 출력: 6
    • filter
      • 배열의 각 요소를 테스트하고, 조건을 만족하는 요소로 새로운 배열을 반환합니다.
      • filter(콜백 함수(요소, 인덱스, 배열))
      • 예시:
      let arr = [1, 2, 3, 4, 5];
      let evenNumbers = arr.filter(element => element % 2 === 0);
      console.log(evenNumbers); // 출력: [2, 4]

    3. 숫자 관련

    • Math.round
      • 숫자를 가장 가까운 정수로 반올림합니다.
      • Math.round(숫자)
      • 예시:
      let num = 3.6;
      let rounded = Math.round(num);
      console.log(rounded); // 출력: 4
    • Math.ceil
      • 숫자를 올림하여 가장 가까운 정수로 만듭니다.
      • Math.ceil(숫자)
      • 예시:
      let num = 3.1;
      let ceiling = Math.ceil(num);
      console.log(ceiling); // 출력: 4
    • Math.floor
      • 숫자를 내림하여 가장 가까운 정수로 만듭니다.
      • Math.floor(숫자)
      • 예시:
      let num = 3.9;
      let floor = Math.floor(num);
      console.log(floor); // 출력: 3
    • Math.max
      • 인자 중에서 가장 큰 숫자를 반환합니다.
      • Math.max(값1, 값2, ..., 값N)
      • 예시:
      let max = Math.max(1, 5, 10, 2);
      console.log(max); // 출력: 10
    • Math.min
      • 인자 중에서 가장 작은 숫자를 반환합니다.
      • Math.min(값1, 값2, ..., 값N)
      • 예시:
      let min = Math.min(1, 5, 10, 2);
      console.log(min); // 출력: 1
    • Math.random
      • 0 이상 1 미만의 난수를 생성합니다.
      • Math.random()
      • 예시:
      let random = Math.random();
      console.log(random); // 출력: 예를 들어 0.123456789 (0 이상 1 미만의 난수)
    • parseInt
      • 문자열을 정수로 변환합니다.
      • parseInt(문자열, 기수)
      • 예시:
      let str = "123";
      let num = parseInt(str, 10);
      console.log(num); // 출력: 123

    4. 진수 변환

    4.1 10진수 -> n진수 (2진수, 8진수, 16진수)
    • toString
      • 10진수를 2진수, 8진수, 16진수로 변환합니다.
      • Number.toString(기수)
      • 예시:
      let num = 10;
      let binary = num.toString(2);
      console.log(binary); // 출력: "1010"
      let octal = num.toString(8);
      console.log(octal); // 출력: "12"
      let hexadecimal = num.toString(16);
      console.log(hexadecimal); // 출력: "a"
    4.2 n진수 (2진수, 8진수, 16진수) -> 10진수
    • parseInt
      • 2진수, 8진수, 16진수를 10진수로 변환합니다.
      • parseInt(문자열, 기수)
      • 예시:
      let binary = "1010";
      let decimalFromBinary = parseInt(binary, 2);
      console.log(decimalFromBinary); // 출력: 10
      let octal = "12";
      let decimalFromOctal = parseInt(octal, 8);
      console.log(decimalFromOctal); // 출력: 10
      let hexadecimal = "a";
      let decimalFromHexadecimal = parseInt(hexadecimal, 16);
      console.log(decimalFromHexadecimal); // 출력: 10

     

    참고 자료

     

    마무리

     

    이 글에서는 코딩 테스트에서 자주 사용되는 자바스크립트 표준 빌트인 객체들을 정리하고, 각 객체의 주요 메서드와 사용 예시를 제공했습니다.

     

    이 글을 통해 자바스크립트 빌트인 객체에 대한 이해를 높이고, 코딩 테스트를 보다 효과적으로 준비할 수 있기를 바랍니다.

     

     

Designed by Tistory.