본문 바로가기

JavaScript23

상속 상속(inheritance)는 객체의 로직을 그대로 물려받는 또 다른 객체를 만들 수 있는 기능이다. 기존의 로직을 수정하고 변경해서 파생된 새로운 객체를 만들 수 있게 해준다. 1. 상속 방법 var Parent = function(name) { //부모 this.name = name; } Parent.prototype.name = null; //prototype 속성 Parent.prototype.introduce = function(){ //prototype 속성 return 'My name is '+name; } var Child = function(name) { //자식 this.name = name; }; //상속 Child.prototype = new Parent(); //사용 var p1 .. 2016. 10. 13.
전역객체와 this 전역객체(Global Object)란 window 객체로 모든 객체가 소속된 객체이고, 창이나 프레임을 의미한다.* 위 그림처럼 alert 와 window.alert의 결과는 같다. 이는 alert가 window 객체의 메소드이기 때문이다. * 객체를 만든다는 것은 window 객체의 프로퍼티를 만드는 것과 같은 것 ! 즉, 전역변수와 함수가 사실은 window 객체의 프로퍼티와 메소드라는 것이다. * 이러한 특성을 ECMAScript에서는 Global 객체라고 부른다. 이 Global 객체는 호스트 환경에 따라서 이름이 다르고 하는 역할이 조금씩 다르다. 웹브라우저와 JavaScript에서 window객체는 전역객체이면서 동시에 웹브라우저의 창이나 프레임은 제어하는 역할을 하고 Node.js에서는 wi.. 2016. 10. 13.
생성자 객체란 서로 연관된 변수와 함수를 그룹핑한 그릇이라 할 수 있다. 객체 내의 변수를 프로퍼티(property)함수를 메소드(method)라고 부른다. * 우측 그림은 객체를 정의 할 때 값을 셋팅한 코드이다. 생성자(constructor) * 객체를 만드는 역할을 하는 함수이다. JavaScript에서 함수는 재사용 가능한 로직의 묶음이 아니라 객체를 만드는 창조자라고 할 수 있다. * 위 그림처럼 함수를 호출할 때 new를 붙이면 새로운 객체를 만든 후에 이를 리턴한다. 이 함수를 생성자라고 한다.* 여러사람을 위한 객체를 만들어야 할 때 위처럼 작성한다. 생성자 내에서 이 객체의 프로퍼티를 정의하고 있는데, 이를 '초기화'라고 한다. *일반적인 객체지향 언어에서 생성자는 클래스의 소속이다. 하지만 J.. 2016. 10. 13.
arguments arguments* 객체이다.* 함수 안에서 인자와 관련된 정보를 담고 있는 객체로 사용방법이 배열과 아주 유사하다. * 함수 sum이 인자에 대한 정의가 없음에도 마지막 행 sum(1, 2, 3, 4)에서 4개의 인자를 전달하고 있다. 함수를 정의할 때 인자에 대한 구현이 없음에도 인자를 전달 할 수 있는 것은 arguments하는 특수한 배열이 있기 때문이다.* arguments는 함수안에서 사용할 수 있도록 이름이나 특성이 약속되어 있는 일종의 배열이다. arguments[0]으로 함수로 전달된 첫번째 인자를 알아낼 수 있고, arguments.length를 통해 함수로 전달된 인자의 개수를 알아낼 수도 있다.* 매개변수 arguments.length는 함수로 전달된 실제 인자의 수를 의미하고, 함.. 2016. 10. 12.
반응형