TIL #15 - JavaScript

Sarang Lee·2021년 1월 18일
0

JavaScript

목록 보기
5/6
post-thumbnail

var, let, const 차이점

var를 쓰지 않는 이유는?

  1. 최신 문법이 아니다. (ES5 -> ES6)

  2. var은 선언되어 있는 이름과 같은 이름으로 변수를 할당해도 에러가 나지 않는다. 이러한 특징은 프로젝트를 진행 할 때 심각한 문제를 발생시킬 수 있다. 한 프로젝트 안에서 같은 이름으로 다시 선언한다는 건 이전에 선언된 값을 무시한다는 뜻이므로 이후 디버깅을 하기 힘들어진다.

  3. 변수의 재선언이 가능해서 오류를 발생시킬 수 있다.

  4. 초기 값으로 undefined를 자동 할당해서 예측 불가능한 오류나 심각한 메모리 누수로 성능에 영향을 주게 된다.

let, const를 쓰자!

  1. let, const는 초기값을 할당하지 않는다.

  2. 초기 값을 할당하지 않으면 문법 에러가 난다.

return

  1. if문 등에서 중간에 return을 하면 함수는 끝이 난다.

  2. early-return이란?
    기존 if문은 조건이 다양한 경우 가독성이 떨어진다는 여론이 형성되어 early-return이란 개념이 생겼다.
    기존의 if else 구문이 아닌 if 구문으로만 조건을 만들고 내부에서 return으로 끝낸다. 만약 중괄호 구문이 한 줄일 경우 중괄호도 생략 가능하다. (간단한 조건문은 if else도 쓴다.)


js의 수식 특징

string - number = number
string + number = string


연산자

=의 경우 변수를 선언할 때만 쓰이고 동치연산자를 사용할 때에는 =====를 사용한다.

그러나 ==는 데이터의 타입까지 고려하지 않기 때문에 값을 확인할 때에는===가 필수이다. !=!==로!

여지를 남겨 예상할 수 없는 상황을 만들지 말고 엄격한 기준을 적용하자.


함수의 인자 갯수

함수의 인자는 보통 최대 3개 정도가 권장된다. 4개 이상일 경우 가독성 문제도 있지만 함수가 무거워지는 일이 발생한다. 인자가 많아지는 경우 함수를 분리해주는 것이 좋다.


빈 값 할당 방법

  1. 데이터 타입을 알 경우 -> 0, "", [], {}를 선언한다.
  2. 타입을 모르는 경우 -> null을 선언한다.

Array vs. Object

Array -> index
Object -> key, value

Array

  • 순서가 보장된 데이터 타입이므로 순서가 중요한 데이터에 주로 쓰인다.

Object

  • 연관성이 있는 데이터들끼리 묶어줄 수 있다. user 정보나 product id, article 등에 쓰인다.

  • key와 value를 페어하여 비교한다. 배열과 다르게 순서가 정해져있지 않다.

  • key로 value를 찾고 싶은 경우 dot notation 혹은 [""]를 이용한다. dot notation이 더 편해 주로 사용되지만 [""]는 특정 데이터가 아닌 변수명도 입력이 가능한 장점이 있다.


for문

for in - index가 필요할 때 주로 사용된다. index 갯수만큼 돈다.
for of - 요소가 필요할 때 주로 사용된다. index 갯수만큼 돈다.


map - 원본 배열을 복사해서 새로운 배열을 반환해서 원본 배열은 아니다. 원본 배열이 아니기 때문에 오히려 훨씬 안전하다. 그리고 index와 value를 둘 다 한번에 접근할 수 있다.

arr.map(value, index) => console.log(index))

arr.forEach - for문 대신 사용한다. map과의 차이점은 return하는 것이 아무것도 없다.

profile
UX에 관심 많은 개발 초보 Front-end Developer

0개의 댓글