[TIL] 코테에서 자주 사용하는 자바스크립트

oaksusu·2024년 3월 25일
0

TIL

목록 보기
18/41
post-thumbnail

0. 주제 선정하게 된 배경 :

내일 진행되는 코테를 준비하고자, 그동안 프로그래머스 풀면서
내가 자주 사용했던 자바스크립트 개념들을 정리해보려고 한다!

1. 정규표현식 :

1-1. 생성하는 법

1. 리터럴

const regexp = /검색패턴/플래그

2. 생성자

const regexp = new RegExp(/검색패턴/, '플래그');
const regexp = new RegExp('검색패턴', '플래그');

1-2. 메서드

1. test()

: 매칭 결과를 불리언 값으로 반환
정규표현식.test(문자열)

const target = 'Is this all there is?';
const regexp = /is/;

regexp.test(target); // true

2. match()

: 매칭 결과를 배열로 반환
⭐️ 다른 메서드와 달리 대상 문자열.match(정규표현식) 이런 순서임!!!!!!

const target = 'Is this all there is?';
const regexp = /is/;

target.match(regexp); // ['is', index: 5, input: 'Is this all there is?', groups: undefined]
  • 플래그가 g일땐, 매칭 결과들을 배열로 반환
const target = 'Is this all there is?';
const regexp = /is/g;

target.match(regexp); // ['is', 'is']

3. exec()

: 매칭 결과를 배열로 반환하나,
플래그가 g여도 첫번째 매칭 결과만 반환함.
정규표현식.exec(문자열)

const target = 'Is this all there is?';
const regexp = /is/;

regexp.exec(target); // ['is', index: 5, input: 'Is this all there is?', groups: undefined]

1-3. 플래그

플래그설명
i대소문자 구분 X
g모든 문자열 전역 검색

1-4. 패턴

  • | : or
  • [] : 묶어서 생각, 범위 지정
  • ^ : []내의 ^은 not / []밖의 ^는 문자열의 시작을 의미

2. 배열에서 자주 쓰는 메서드

2-1. push, pop

  • push: 배열의 마지막에 요소를 삽입하고, 배열의 길이를 반환
  • pop : 배열의 마지막 요소를 제거하고, 그 요소를 반환

2-2. unshift, shift

  • unshift : 배열의 첫번째에 요소를 삽입하고, 배열의 길이를 반환
  • shift : 배열의 첫번째 요소를 제거하고, 그 요소를 반환

2-3. splice

: splice(어디서부터 제거할건지의 인덱스, 몇개의 요소를, 새로운 요소로 대체 및 삽입...)
⭐️ 제거한 배열의 요소를 반환함
⭐️⭐️ 원본 배열이 변함!!

const arr = [1,3,30,40,55,66];
arr.splice(1,2, 90, 99, 999); // [3, 30] ⭐️ 
console.log(arr); // [1,90,99,999,40,55,66];⭐️⭐️ 

2-4. slice

: ⭐️⭐️ 원본 배열은 변하지 않음!!

  • slice(i, j + 1)
    : i번 인덱스부터 j번 인덱스까지 잘라낸 배열
const arr = [1,2,3,4,5];
arr.slice(0, 2); // [1,2]
  • slice(i)
    : i번 인덱스부터 마지막 인덱스까지 잘라낸 배열
arr.slice(3); // [4,5]
  • slice(-1)
    : 마지막 인덱스의 요소를 반환
arr.slice(-1); // [5]

2-5. some, every, find, findIndex

: 콜백함수를 넣어줘야함

  • some: [조건] 콜백함수의 반환값이 하나라도 참이면 ------> [반환] true를 반환
  • every : [조건] 콜백함수의 반환값이 모두가 참이여야만 ------> [반환] true를 반환
  • find : [조건] 콜백함수가 처음으로 true를 반환하면 ------> [반환] 그 요소를 반환
  • findIndex : [조건] 콜백함수가 처음으로 true를 반환하면 ------> [반환] 그 인덱스를 반환 (없으면 undefined)

3. 문자열에서 자주 쓰는 메서도

3-1. slice

: ⭐️⭐️ 원본 문자열은 변하지 않음!!

  • slice(i, j + 1)
    : i번 인덱스부터 j번 인덱스까지 잘라낸 문자열
const str = 'string';
arr.slice(0, 2); // 'st'
  • slice(i)
    : i번 인덱스부터 마지막 인덱스까지 잘라낸 문자열
arr.slice(3); // 'ing'
  • slice(-i)
    : 뒤에서부터 i번째 인덱스까지 (1부터 셈)
const str = 'hello world';
arr.slice(-5); // 'world'

3-2. replace

: ⭐️ 원본 문자열은 변하지 않음!!

const str = 'hello hi ho';
str.replace('ho', 'ha'); 
  • ⭐️ 정규 표현식 사용 가능
const str2 = 'dhfklfwe*sdfjksd**sdkfwf*ddd';
str2.replace(/[a-d]/ig, '아'); // '아hfklfwe*s아fjks아**s아kfwf*아아아'
profile
삐약

0개의 댓글