[JS] 객체리터럴과 구조분해할당

lezsuuu·2022년 7월 19일
0

JavaScript

목록 보기
2/6

객체리터럴

  • Object Literal Notation

  • 객체리터럴의 형식

let a = {
	name: 'lee'
    age: '29'
    hobby: {
    	day: workout
        night: study
    	}
    }
  • key(속성)와 value(값)가 쌍으로 이루어진 형식

  • 문자열,숫자,식별자 이름을 키로 사용할 수 있으며, ES6부터 키를 계산할 수 있다.

(예시)
var anObject = {
    property1 : true,
    showMessage : function (msg) { alert(msg) }
};
  • JASON 형식과 유사하지만 엄격히 구분된다.
    - JSON은 프로퍼티의 이름을 반드시 쌍따옴표("")로 감싸야한다.
    - JSON의 값으로는 문자열, 숫자, 불리언, null, 배열, object(또 다른 JSON)만 가능하다.
    - 반면 자바스크립트 객체 리터럴 표기법은 JSON의 빡빡한 규칙을 대부분 허용하며, 값으로 함수와 인스턴스도 할당할 수 있다.

구조분해할당

  • Destructuring assignment
  • 배열이나 객체의 속성을 해체하여 그 값을 개별 변수에 담을 수 있게 하는 JavaScript 표현식
var a, b, rest;
[a, b] = [10, 20];
console.log(a); // 10
console.log(b); // 20

[a, b, ...rest] = [10, 20, 30, 40, 50];
console.log(a); // 10
console.log(b); // 20
console.log(rest); // [30, 40, 50]

({ a, b } = { a: 10, b: 20 });
console.log(a); // 10
console.log(b); // 20


// Stage 4(finished) proposal
({a, b, ...rest} = {a: 10, b: 20, c: 30, d: 40});
console.log(a); // 10
console.log(b); // 20
console.log(rest); // {c: 30, d: 40}
profile
돌고 돌아 벨로그

0개의 댓글