제이스크립트 객체 메서드
예제
var person = { firstName: "Bill", lastName : "Gates", id : 648, fullName : function() { return this.firstName + " " + this.lastName; } };
JavaScript 메서드
JavaScript 메서드는 객체에서 수행할 수 있는 작업입니다。
JavaScript 메서드는 포함합니다함수 정의의 속성입니다。
속성 | 값 |
---|---|
firstName | Bill |
lastName | Gates |
age | 62 |
eyeColor | blue |
fullName | function() {return this.firstName + " " + this.lastName;} |
메서드는 객체 속성으로 저장된 함수입니다。
this 키워드로 불립니다
JavaScript에서는 this
의 것을 가리킵니다. 이는 JavaScript 코드를 소유하는 객체를 의미합니다.
this
의 값을 함수에서 사용할 때, '소유'하는 함수의 객체입니다.
주의하세요 this
변수가 아닙니다. 키워드입니다. 변경할 수 없습니다 this
의 값을 가져옵니다。
객체 메서드에 접근
다음과 같은 문법으로 객체 메서드를 생성하세요:
methodName : function() { 코드 행 }
다음과 같은 문법으로 객체 메서드에 접근하세요:
objectName.methodName()
일반적으로 fullName()를 person 객체의 메서드로, fullName를 속성으로 설명합니다。
fullName 속성이 ()를 통해 호출되면 함수로 실행됩니다。
이 예제에서는 person 객체의 fullName()를 호출합니다 메서드:
예제
name = person.fullName();
fullName을 호출하면 속성()를 사용하지 않으면, 반환됩니다함수 정의:
예제
name = person.fullName;
내장 메서드를 사용하여
이 예제에서는 String 객체의 toUpperCase()
메서드를 사용하여 텍스트를 대문자로 변환합니다:
var message = "Hello world!"; var x = message.toUpperCase();
위 코드가 실행된 후 x의 값은 다음과 같이 될 것입니다:
HELLO WORLD!
새 메서드 추가
객체에 메서드를 추가하는 것은 생성자 함수 내에서 완료됩니다:
예제
function person(firstName, lastName, age, eyeColor) { this.firstName = firstName; this.lastName = lastName; this.age = age; this.eyeColor = eyeColor; this.changeName = function (name) { this.lastName = name; }; }
changeName() 함수의 name 값이 person의 lastName 속성에 할당됩니다.
지금부터 시도할 수 있습니다:
myMother.changeName("Jobs");
myMother "대체"로 사용하여 JavaScript는 어느 person을 가리키는지 명확히 알 수 있습니다.