object

JavaScript

[JavaScript][기초] Object Type 깊은 복사/깊은 비교

Object Type은 Primitive Type과 달리 참조에 의해(by reference) 저장되고 복사 된다.따라서 객체를 복사하고 싶을때에는 깊은 복사를 해줘야 한다. // 객체 얕은 복사let so1 = { name: "DY" };let so2 = so1;// 객체 깊은 복사let do1 = { name: "DY" };let do2 = { ...do1 };// 객체간의 비교는 기본적으로 참조값을 기준으로 한다.let o1 = { name: "DY" };let o2 = o1;let o3 = { ...o1 };// 얕은 비교console.log(o1 === o2); // trueconsole.log(o1 === o3); // false// 깊은 비교console.log(JSON.stringify(o..

JavaScript

[JavaScript][기초] 배열, 객체의 구조분해 할당

구조 분해 할당의 목적은배열이나 객체의 속성을 해체하여 그 값을 개별 변수에 담을 수 있게 하기 위함 // 1. 배열의 구조 분해 할당let arr = [1, 2, 3];let testOne = arr[0];let testTwo = arr[1];let testThree = arr[2];// => 매우 불편// 구조 분해 할당을 통해 한 번에 값을 할당let [one, two, three] = arr;console.log(one, two, three); // 1 2 3let [one1, two2] = arr;console.log(one1, two2); // 1 2// 2. 객체의 구조 분해 할당let person = { name: "DY", age: 99, hobby: "Coding",};// [ke..

JavaScript

[JavaScript][기초] 객체 { } 생성

객체는 { } 를 이용하여 생성하고 class 처럼 변수와 메소드를 넣어줄 수 있다.// 1. 객체 생성let obj1 = new Object(); // 객체 생성자let obj2 = {}; // 객체 리터럴// 2. 객체 프로퍼티 (속성)let person = { name: "DY", // key : value age: 33, hobby: "soccer", extra: function () { console.log("print extra"); }, "like cat": false,};// 3. 객체 프로퍼티를 다루는 방법// 3.1 특정 프로퍼티에 접근하는 방법 (점 표기법, 괄호 표기법)let name = person.name;console.log("obj name is ", name..