you-dont-know-js-summary

Read 'You don't know JS' and write a summary.

View the Project on GitHub ragubyun/you-dont-know-js-summary

2. 값

2.1 배열

배열 자체도 하나의 객체여서 키/프로퍼티 문자열을 추가할 수 있다.

하지만 비추

2.1.1 유사 배열

숫자 인덱스가 가리키는 값들의 집합

진짜 배열로 바꿀 때는 Array.from() 사용

function foo() {
    var realArr = Array.from(arguments); // 유사배열 arguments
}

2.2 문자열

문자열은 유사배열이다.

문자열 !== 문자의 배열

var a = 'arr';
var b = ['a', 'r', 'r'];

a[1] = 1;
b[1] = 1;

a; // 'arr'
b; // ['a', '1', 'r']

문자열은 불변 값Immutable이지만 배열은 가변 값Mutable이다.

문자열은 불변 값이므로 문자열 메서드는 그 내용을 바로 변경하지 않고 항상 새로운 문자열을 생성한 후 반환한다.

대부분의 배열 메서드는 사실상 문자열에 쓸 수 없지만, 불변 배열 메서드를 빌려 쓸 수는 있다.

2.3 숫자