러닝 자바스크립트 스터디 자료 - CHAPTER 3. 리터널과 변수, 상수, 데이터 타입

CHAPTER3 은 데이터에 관한 내용들이었는데, 많은 부분들이 개념정도만을 이야기하고 나머지는 뒤에서 자세하게 설명한다고 생략되어있는 부분들이 많았다.
이번 포스팅에서도 간단하게 개념들만 정리하고 추후에 다시 언급하는 방법을 취하겠다.

변수와 상수

  • 변수 : 언제든지 변할 수 있는 값
  • 상수 : 한번 할당한 값을 바꿀 수는 없다.

변수 선언시 초기값을 할당하지 않으면 암묵적으로 undefined를 할당한다.
let, const 키워드는 ES6에서 새로 생겼다.
상수 이름에는 보통 대문자와 밑줄만을 사용하는데 절대적이지는 않다.

식별자 이름

  • 반드시 글자나 달러기호, 밑줄로 시작해야 한다. (밑줄 한개 또는 두개로 시작하는 식별자는 특별한 상황또는 ‘내부’변수에서만 사용)
  • 식별자에는 글자와 숫자, 달러기호, 밑줄만 쓸 수 있다.
  • 유니코드 문자도 쓸 수 있다.
  • 예약어는 사용 할 수 없다.

여러가지 식별자 표기법

  • 카멜 표기법 (camelCase) : 각 단어의 첫문자를 대문자로 표기하고 붙여쓰되, 맨처음 문자는 소문자로 표기함
  • 파스칼 표기법 (PascalCase) : 첫단어를 대문자로 시작하는 표기법
  • 스네이크 표기법 (snake_case) : 단어를 밑줄문자로 구분하는 표기법
  • 케밥 표기법 (kebab-case) : 하이픈으로 단어를 연결하는 표기법
  • 헝가리안 표기법 (Hungrian Notation) : 변수 및 함수의 인자 이름 앞에 데이터 타입을 명시하는 코딩규칙 - 나무위키

리터널

  • 값을 프로그램 안에서 직접 지정한다는 의미, 값을 만드는 방법

원시타입과 객체

  • 숫자, 문자열, 불리언, null, undefined, 심볼(symbol)
  • 원시타입은 불변 - 불변성이라는 말이 변수의 값이 바뀔 수 없다는 뜻은 아니다.
  • 객체 - 여러가지 형태와 값을 가질 수 있다.

숫자

  • IEEE-764 배정도부동소수점 숫자 형식을 사용(더블)
  • 자바스크립트에는 숫자형 데이터 타입이 하나이다.

문자열

  • 유니코드 텍스트 - 이모티콘 까지 포함(유니코드를 사용하는 소프트웨어가 모든 코드포인트를 정확히 렌더링 한다고 보장하지는 않는다. )
  • 문자열 리터널에는 작은따옴표, 큰따옴표, 백틱을 사용한다. ``(백틱)은 ES6에서 도입

이스케이프

  • 역슬래시(\)를 사용 - 자기자신도 이스케이프 할 수 있다.

문자열 템플릿(문자열 채우기)

값을 문자열 안에 써야 할때 사용 - ES5에서는 문자열병합을 통해 변수나 상수 를 문자열 안에 사용

  • 백틱을 사용하여 변수나 상수를 문자열 안에 쓰는 방법, 문자열의 정해진 위치에 값을 채워 넣는 간편한 방법
  • 문자열 템플릿 안에서는 달러기호가 특수문자가 된다.
  • 달러기호 다음에 중괄호로 감싼 값을 쓰면 그 값이 문자열에 삽입된다.

심볼

  • 심볼은 항상 유일하다.
  • 고유한 식별자, 심볼은 모두 서로 다르다.

null, undefined

  • null은 프로그래머에게 허용된 데이터 타입
  • undefined 는 자바스크립트 자체에서 사용 (프로그래머가 사용 할 수는 있지만 지양)

객체

  • 객체의 본질은 컨테이너 - 내용물이 바뀐 다고 컨테이너가 바뀌는 것은 아니다.
  • 중괄호를 사용하는 리터널 문법이 있다.
  • 객체의 콘텐츠는 프로퍼티 또는 멤버라고 부름
  • 프로퍼티 이름에 유효한 식별자를 써야 멤버접근연산자(.)를 사용 할 수 있다.
  • 유효하지 않다면 계산된 멤버접근연산자([])를 써야한다. -유효한 식별자여도 사용가능하다. 심볼프로퍼티에 접근할 때도 사용할수 있다.
  • 객체에 함수를 담을 수도 있다.

배열

  • 배열크기는 고정되지 않는다 - 언제든 요소를 추가하거나 제거할 수 있다.
  • 요소의 타입을 가리지 않는다.
  • 배열요소는 0으로 시작한다.(숫자가 아닌 키나 분수, 음수 등을 키로 쓸수 있지만 지양)
  • 대괄호 안에 배열요소를 쉼표로 구분해서 쓴다.
  • 요소 숫자를 반환하는 length프로터티가 있다.
  • 요소에 접근할 때는 대괄호 안에 요소의 인덱스 숫자(Key)를 씀
  • 값을 덮어 쓸때에는 새 할당 하면된다.

데이터타입 변환

  • 숫자로 변환 : Number객체 생성자 - parseInt, pasrseFloat (parseInt- 기수를 지정 할 수 있음, parseFloat- 항상 기수가 10이라고 가정)
  • Date객체를 숫자로 변환 : valuOf()메서드를 사용 - UTC 1970년1월 1일 자정으로부터 몇밀리초가 지났는지를 나타내는 숫자(타임스태프)
  • 문자열로 변환 : toString()메서드를 사용, 문자열병합을 사용(숫자 + 문자열 = 문자열)
  • 배열에서의 toString()메서드는 각 요소를 문자열로 바꾼다음 쉼표로 연결한 문자열을 반환한다.

댓글

Your browser is out-of-date!

Update your browser to view this website correctly. Update my browser now

×