06 -3 얕은 복사(참조 복사)와 깊은 복사(... 전개 연산자)
객체에 없는 속성에 접근하면 undefined 자료형이 나온다. 얕은 복사 : 단순히 다른 이름을 붙이는 형태 뿐인 복사 const a = [1, 2] const b = a b.push(3) b.push(4) console.log(a) // [1, 2, 3, 4] console.log(b) // [1, 2, 3, 4] => 이름(a, b)만 다르지 같은 배열 값이 나온다. 반대로, 깊은 복사 : 복사한 배열이 각각 완전히 독립적으로 작동한다. - 최신 자바스크립트의 전개 연산자를 사용해 [...배열] 같이 입력하면 된다. const a = [1, 2] const b = [...a] b.push(3) b.push(4) console.log(a) // [1, 2] console.log(b) // [1, 2,..
2021. 12. 13.
09 -1 자바스크립트 - 객체 지향, 추상화, 객체 처리하는, 생성하는 함수
객체 지향 패러다임 : 객체를 우선적으로 생각해서 프로그램을 만드는 방법론 - 객체 : 속성과 메소드를 갖는 것 - 객체 지향 프로그래밍 : 객체를 만들고 객체들의 상호작용을 중심으로 개발하는 방법론 - 클래스 문법으로 객체를 효율적이고 안전하게 만든다. 추상화(abstraction) : 프로그램에 필요한 요소만 사용해서 객체를 표현하는 것을 의미 - 사전적 의미 : 복잡한 자료, 모듈, 시스템 등으로부터 핵심적인 개념과 기능을 간추려내는 것 예시로, 와인의 속성을 나열하면 와인의 색, 와인의 향, 와인에 들어간 재료, 숙성 시간, 와인의 뭐뭐 등 속성을 세세하게 나열하면 아주 많을 것(무한에 가까운)이다. 그러나 프로그램을 만드는 것에 있어 (방금 언급한 것은) 모두 필요한 속성 데이터가 아니다. 와인..
2021. 3. 6.