객체 썸네일형 리스트형 객체와 변경불가성(Immutability) mutate 에서 im을 붙인다면? Mutate - 변화, Mutable - 변화 가능한(형용사), mutability - 변화 가능함(명사) 다시 말해서 mutability는 정보의 원본이 변경될 수 있다는 것입니다. 부정의 의미인 im을 붙이면 immutability, 즉 변화 가능하지 않음 이라는 뜻이 됩니다. 정보의 원본을 훼손되는 것을 막는 것이 immutability 입니다. Immutability 배경 자바스크립트에서 객체는 참조(reference) 형태로 전달하고 전달 받으며, 객체가 참조를 통해 공유되고 있다면 그 상태가 언제든지 변경될 수 있기 때문에 문제가 될 가능성도 커집니다. 객체의 참조를 가지고 있는 어떤 장소에서 객체를 변경하면 참조를 공유하는 모든 장소에 그 영향을 받기 때문.. 더보기 자바스크립트 객체 객체 자바스크립트에서 단순한 데이터 타입은 (숫자, 문자열, 블리언(true/false), null, undefined)가 있다. 이들을 제외한 다른값은 모두 객체이다. 하지만 이들은 값이 정해지면 변경할 수 없다. 자바스크립트의 객체는 변형 가능한 속성들의 집합이다. 자바스크립트에서는 배열, 함수, 정규 표현식, 객체 등 모두 객체이다. 객체는 이름과 값이 있는 속성들을 포함하는 컨테이너 라고 할 수 있다. 속성의 이름은 문자열이면 모두 가능하다. (빈 문자열도 포함) 속성의 값은 undefined를 제외한 자바스크립트의 모든 값이 사용 될 수 있다. 자바스크립트의 객체는 클래스가 필요 없고, 새로운 속성의 이름이나 값이 어떠한 제약 사항이 없다. 객체는 데이터를 한 곳에 모으고 구조화 하는데 유용하다.. 더보기 6day - 데이터 타입과 연산자(5) 1-1)Array( ) 생성자 함수 배열 리터럴도 결국 자바스크립트에서 기본 제공 Array () 생성자 함수로 배열을 생성하는 과정을 단순화시킨 것이다.간단하게 Array() 생성자 함수를 알아보자.(개발자들은 배열 리터럴대신 Array() 함수를 사용한다.)1234567var foo = new Array(3);console.log(foo); // undefined x 3console.log(foo.length) // 3 var bar = new Array( 1, 2, 3 );console.log(bar); // [ 1, 2, 3 ]console.log(bar.length) // 3csArray () 생성자 함수를 호출할때 인자 개수에 따라 동작이 다르므로 주의 해야한다.호출할 때 인자가 1개이고, 숫.. 더보기 5day - 데이터 타입과 연산자(4) 이번장은 중요한지 내용이 길다. 1)배열배열은 자바스크립트 객체의 특별한 형태이다.크기를 지정하지 않아도 되고 어떠한 위치에 어느 타입의 데이터를 저장하더라도 에러가 발생하지 않는다. 1-1)배열 리터럴앞에서 객체 리터럴을 경험해봐서 비슷하다. 다른점은 대괄호( [ ] )를 사용한다.123456//배열 리터럴을 통한 5개 원소를 가진 배열 생성 var colorArr = ['orange', 'yellow, 'blue', 'green', 'red'];console.log(colorArr[0]); //orangeconsole.log(colorArr[1]); //yellowconsole.log(colorArr[4]); //redcs객체 리터럴에서는 프로퍼티 이름과 프러퍼티 값을 모두 표기해야 했지만, 배열 리.. 더보기 이전 1 다음