[JS] 데이터 타입과 연산자

daybyday·2020년 8월 29일
0

Javascript

목록 보기
2/15
post-thumbnail

자바스크립트 짚고 가기

국비지원 프론트엔드 과정을 듣기 시작한지 세 달 가까이 되었다. 학원에서 배우는 것도 있지만 혼자 정리하지 않으면 모조리 까먹어버릴 것 같아서 책📕을 구입했다.

인사이드 자바스크립트와 코어 자바스크립트를 구매했고 인사이드 자바스크립트 ➡ 코어 자바스크립트 순으로 읽을 예정이다. 첫 장을 요약 정리하면서부터 모르는 것 투성이라서 반성했고... 모르는 걸 알고 넘어갈 수 있어 다행이라 생각했다.

책이 나온지 좀 되어서 예전 코드라고 하던데 그래도 기초를 잡는데는 나쁘지 않을 것 같아서 정리해본다. 최신 자바스크립트는 또 공부를,,😅

지루하지만 데이터 타입부터 복습해보자😉



자바스크립트 데이터 타입과 연산자

자바스크립트 데이터 타입은 기본 타입참조 타입(객체타입)으로 나뉜다.

기본 타입참조 타입
숫자 Number배열 Array
문자열 String함수 Function
불린값 Boolean정규표현식
undefined
null

자바스크립트는 느슨한 타입 체크 언어로 var라는 한 가지 키워드로 변수 선언 가능.


1. 기본 타입

그 자체가 하나의 값을 나타낸다.

typeof 연산자를 통해 피연산자의 타입을 알 수 있다.

var nullVar = null;
console.log(typeof nullVar); // Object

숫자

자바스크립트는 정수형이 따로 없고 모든 숫자를 실수로 처리한다.
나눗셈 연산 시 주의할 것.

* 올림은 Math.floor() 사용

문자

문자열은 문자 배열처럼 인덱스로 접근 가능하다.

var str = 'test';
console.log(str[0], str[1]); // t e
💡 한 번 정의된 문자열은 변하지 않는다.

이 때, str[0] = 'T'라고 한다고 해서 str이 'Test'로 변하지 않는다.

str = 'Test'라고 재정의한다면 가능하겠지만
인덱스를 바꾼다고 문자열이 갱신되지는 않는다는 말 같다.

Boolean

True of False😁

null & Undefined

Undefined : 값이 할당되지 않은 변수. 💡변수 자체의 값도 undefined이다.
null : 명시적으로 값이 비어있음을 나타냄.

💡 2) 문자 의 예시에서 보았듯 null의 typeof 결과는 object이다.
따라서 null 타입인지를 확인하기 위해서는 일치연산자(==)를 사용해야 한다.


2. 참조 타입

객체 : '이름(Key):값(Value)' 형태의 프로퍼티들을 저장하는 컨테이너.

객체 생성

- Object() 생성자 함수 사용

    // 빈 객체 생성
    var first = new Object();

- 객체 리터럴 방식

  var first = {
      name: 'first',
          age: 30,
          gender: 'female'
       };

- 생성자 함수 이용

4장에서。。。

객체 프로퍼티 읽기 / 쓰기 / 갱신


- 접근방법

  • 대괄호([]) 표기법
  • 마침표(.) 표기법

- 쓰기

  var first = {
        name: 'first',
            age: 30,
            gender: 'female'
         };

- 읽기

   console.log(first.name); // first
   console.log(first['name']; // first

- 갱신

  first.age = 40;
  console.log(first.age) // 40


프로퍼티 동적 생성

자바스크립트에서는 객체가 생선된 후에도 동적으로 프로퍼티를 생성해서 해당 객체에 추가할 수 있다.

 first.major = 'computer science';
 console.log(first);
 
 // { name: 'first', age: 40, gender: 'female', major: 'computer science' }

대괄호 표기법만을 사용해야하는 경우

접근하려는 프로퍼티가 표현식이거나 예약어일 때

first['full-name'] = 'first jenny';
console.log(first['full-name']); // first jenny
console.log(first.full-name); // NaN

full-name이라는 프로퍼티의 경우 - 연산자가 있는 표현식으로 인식하므로 대괄호 표기법을 써야한다.



0개의 댓글