Page 27 -
P. 27
array란 배열의 첫 번째, 두 번째 요소와 네 번째 요소를 변수에 대입하는 코드입니다.
다음과 같이 바꿀 수 있습니다.
const array = ['nodejs', {}, 10, true]; 2
const [node, obj, , bool] = array;
어색해 보이지만, 나름대로 규칙이 있습니다. node, obj, bool의 위치를 보면 node는 배열의 첫 번
째 요소, obj는 두 번째 요소, bool은 네 번째 요소라는 것을 알 수 있습니다. obj와 bool 사이의 알아두어야 할 자바스크립트
요소인 10에는 변수명을 지어주지 않았으므로 10은 무시합니다.
구조분해 할당 문법도 코드 줄 수를 상당히 줄여주므로 유용합니다. 특히 노드는 모듈 시스템을
사용하므로 이러한 방식을 자주 씁니다. 모듈 시스템은 3.3절에서 자세히 알아보겠습니다.
2.1.6 클래스
클래스 문법도 추가되었습니다. 하지만 다른 언어처럼 클래스 기반으로 동작하는 것이 아니라 여
전히 프로토타입 기반으로 동작합니다. 프로토타입 기반 문법을 보기 좋게 클래스로 바꾼 것이라
고 이해하면 됩니다.
다음은 프로토타입 상속 예제 코드입니다.
var Human = function(type) {
this.type = type || 'human';
};
Human.isHuman = function(human) {
return human instanceof Human;
}
Human.prototype.breathe = function() {
alert('h-a-a-a-m');
};
var Zero = function(type, firstName, lastName) {
Human.apply(this, arguments);
this.firstName = firstName;
this.lastName = lastName;
};
73
node_06.indd 73 2020-07-14 오전 11:02:01