⭐️ 자바스크립트 코드 트릭1️⃣ 구조분해할당을 통한 변수 Swap✏️ ES6의 구조 분해 할당 문법을 사용하여 두 변수를 swap 가능하다. Show
2️⃣ 배열생성으로 루프 제거✏️ 보통 단순히 범위 루프를 돌고 싶다면 다음과 같이 작성한다.
✏️ 만약 범위 루프를 함수형 프로그래밍 방식으로 사용하고 싶다면 배열을 생성해서 사용
3️⃣ 배열 내 같은 요소 제거✏️ Set 을 이용할 수 있다.
4️⃣ Spread연산자를 통한 객체 병합✏️ 두 객체를 별도 변수에 합쳐줄 수 있다.
5️⃣ && 와 || 활용✏️ &&와 ||는 조건문 외에서도 활용 가능
6️⃣ 구조 분해 할당 사용✏️ 객체에서 필요한 것만 꺼내 사용하는 것이 좋다
✏️ 객체 생성 시 키 생략하기
7️⃣ 비구조화 할당 사용✏️ 함수에 객체를 넘길 경우 필요한 것만 꺼내 사용 가능
8️⃣ 동적 속성 이름✏️ ES6에 추가된 기능으로 객체의 키를 동적으로 생성 가능
9️⃣ !!연산자를 통한 Boolean값 변경✏️ !! 연산자를 이용하여 0, null, 빈 문자열, undefined, NaN을 false로 그 외에는 true로 변경 가능 ⭐️ 배열배열은 연관된 데이터를 연속적인 형태로 구성되 구조를 가진다. 배열에 포함된 원소는 순서대로 번호 index가 붙는다. 1️⃣ 배열 특징✏️ 고정된 크기를 가지며 일반적으론 동적으로 크기를 늘릴 수 없다.
✏️ 원하는 원소의 index를 알고 있다면 O(1)로 원소를 찾을 수 있다. ✏️ 원소를 삭제하면 해당 index에 빈자리가 생긴다. 2️⃣ 배열 요소 삭제삭제 후 순서를 맞추는 것은 O(n), 즉 선형시간이 소요 3️⃣ 배열 요소 추가중간에 요소를 추가하고 싶다면 O(n), 즉 선형시간 소요
✅ JS with 배열1️⃣ 배열 생성 및 초기화✏️ 배열 생성
✏️ 배열 초기화
✏️ Source ✏️ Output 2️⃣ 배열 요소 추가, 삭제✏️ Source ✏️ Output 3️⃣ 배열 길이 확인✏️ 배열 길이 확인 length
(! 권장 방법이 아님)
4️⃣ number가 아닌 indexindex가 number가 아니어도 배열에 추가되고 키값이 설정된다. 자바스크리트의 배열은 크기가 고정되어있지 않고 필요에 다라서 줄이고 늘릴 수 있기 때문에 인덱스에 숫자가 아닌 문자열, 논리값이 들어갈 수 있다. 숫자 외에 값을 넣으면 자동으로 문자열로 반환된 값이 키 값이 된다. 왜냐하면 배열은 근본적으로 객체 타입이기 때문이다. 하지만 배열은 일반적인 객체와 달리 length가 내부적으로 관리되기 때문에 인덱스와 무관한 값에 대해서는 길이 추가가 되지 않는다. 아래에서 길이가 여전히 4인 이유가 바로 이 것이다!
5️⃣ 배열의 편리한 함수들✏️ 자세한 설명은 아래의 정리에서!
⭐️ 객체여러 값을 키-값 형태로 결합시킨 복합 타입 ✅ JS with 객체1️⃣ 객체 생성
2️⃣ 객체 추가
3️⃣ 객체 삭제
in 이용하여 실제로 키가 있는지 없는지 확인
4️⃣ key & value 확인
5️⃣ 객체 순회
👍 정리 (중요)🙂 코딩테스트에서 써먹을 수 있는 유용한 문법들만 정리해보자~~ ✏️ fill
✏️ from
✏️ push
✏️ pop
✏️ shift
✏️ unshift
✏️ slice
✏️ splice
✏️ join
✏️ reverse
✏️ concat
✏️ for... of
✏️ for... in
✏️ Object.keys(obj)
✏️ Object.values(obj)
|