자바스크립트

도서/코어 자바스크립트

1장. 데이터 타입 (04. 기본형 데이터와 참조형 데이터 - 불변 객체)

불변 객체 불변 객체를 만드는 간단한 방법 참조형 데이터의 '가변'은 데이터 자체가 아닌 내부 프로퍼티를 변경할때 성립합니다. 데이터 자체를 변경하고자 하면(새로운 데이터를 할당하고자 하면) 기본형 데이터와 마찬가지로 기존 데이터는 변하지 않습니다. 내부 프로퍼티를 변경할 필요가 있을 때마다 매번 새로운 객체를 만들어 재할당하기로 규칙을 정하거나 자동으로 새로운 객체를 만드는 도구를 활용하면 객체의 불변성을 확보할 수 있습니다. 불변 객체가 필요한 경우 var user = { name: 'Jaenam', gender: 'male' }; var changeName = function (user, newName) { var newUser = user; newUser.name = newName; return ..

도서/코어 자바스크립트

1장. 데이터 타입(04. 기본형 데이터와 참조형 데이터 - 변수 복사 비교)

변수 복사 비교 // 1. var a = 10; var b = a; // 2. var obj1 = { c: 10, d: 'ddd' }; var obj2 = obj1; 변수 영역 주소 1001 1002 1003 1004 ... 데이터 이름: a 값: @5001 이름: b 값: @5001 이름: obj1 값: @5002 이름: obj2 값: @5002 데이터 영역 주소 5001 5002 5003 5004 ... 데이터 10 @7103 ~ ? 'ddd' 객체 @5002의 변수 영역 주소 7103 7104 ... 데이터 이름: c 값: @5001 이름: d 값: @5003 기본형 데이터의 변수 복사 변수 영역의 공간을 확보합니다. (@1001) a라는 식별자를 지정합니다. 데이터 영역에서 10이라는 데이터를 검..

도서/코어 자바스크립트

1장. 데이터 타입 (04. 기본형 데이터와 참조형 데이터 - 불변값, 가변값)

기본형 데이터와 참조형 데이터 불변값 변수와 상수를 구분하는 성질은 '변경 가능성'입니다. 값을 변경할 수 있으면 변수 변경할 수 없으면 상수 변수와 상수를 구분 짓는 변경 가능성의 대상은 변수 영역 메모리입니다. 불변값과 상수는 다른 개념입니다. 불변성 여부를 구분할 때의 변경 가능성의 대상은 데이터 영역 메모리입니다. 불변값 기본형 데이터(숫자, 문자열, boolean, null, undefined, Symbol) 숫자와 문자열의 예시 // 1. var a = 'abc'; a = a + 'def'; // 2. var b = 5; var c = 5; b = 7; 변수 a에 데이터 할당 후 다른 데이터로 재할당 하는 경우 a에 'abc'를 할당했다가 뒤에 'def'를 추가합니다. 'abc'와 'abcde..

도서/코어 자바스크립트

1장. 데이터 타입 (01. 데이터 타입의 종류 ~ 03. 변수 선언과 데이터 할당)

기본형과 참조형 자바스크립트가 구분하는 데이터 타입은 크게 두 가지로 분류할 수 있습니다. 기본형primitive type string, number, boolean, undefined, null, Symbol 참조형reference type Object(Array, Object, RegExp 등) 기본형은 값이 담긴 주소값을 바로 복제하는 반면, 참조형은 값이 담긴 주소값들로 이루어진 묶음을 가리키는 주소값을 복제한다는 점이 다릅니다. 이게 어떤 것을 의미하는지 알아보기 전에, 메모리와 데이터, 변수와 식별자 등에 대해서 알아보겠습니다. 메모리와 데이터 메모리 컴퓨터는 저장 할 때, 모든 데이터를 0과 1로 변경하여 저장합니다. 이 0과 1로 저장할 수 있는 하나의 단위를 비트bit라고 합니다. 수 많..

이토.
'자바스크립트' 태그의 글 목록