>  기사  >  웹 프론트엔드  >  나만의 JavaScript 개체 만들기

나만의 JavaScript 개체 만들기

高洛峰
高洛峰원래의
2016-11-25 14:05:30855검색

JavaScript 객체

객체는 특별한 데이터 유형일 뿐이며 일련의 속성과 메서드를 갖습니다. 이해하기 위해 예를 들어 보겠습니다. 사람은 객체입니다. 속성은 객체와 관련된 값입니다. 사람의 속성에는 이름, 키, 몸무게, 나이, 피부색, 눈 색깔 등이 포함됩니다. 모든 사람은 이러한 속성을 갖고 있지만, 속성의 가치는 사람마다 다릅니다. 객체에도 메소드가 있습니다. 메소드는 객체에 적용할 수 있는 동작입니다. 사람들의 방법은 먹고, 자고, 일하고, 노는 것 등일 수 있습니다.

속성

객체의 속성에 액세스하는 방법:

ObjectName.Properties

단순히 객체에 값을 할당함으로써 속성, 개체에 속성을 추가할 수 있습니다. personObj 개체가 존재한다고 가정합니다. 이름, 성, 나이, 눈 색깔과 같은 속성을 추가할 수 있습니다.

personObj.firstname="John" personObj.lastname="Doe" personObj.age=30 personObj.eyecolor="blue" document.write(personObj.firstname)

위 코드 생성 다음 출력:

John

Methods

객체에는 메서드가 포함될 수 있습니다.

다음 구문을 사용하여 메소드를 호출합니다.

객체 이름.메소드 이름()

참고: 대괄호 사이의 메소드에 대한 매개변수는 생략할 수 있습니다.

sleep이라는 personObj 개체의 메서드를 호출합니다.

personObj.sleep()

자신만의 개체 만들기

만드는 방법에는 여러 가지가 있습니다. 객체:

1. 객체의 인스턴스 생성

다음 코드는 객체의 인스턴스를 생성하고 여기에 네 가지 속성을 추가합니다.

personObj=new Object ( ) personObj.firstname="John" personObj.lastname="Doe" personObj.age=50 personObj.eyecolor="blue"

personObj에 메서드를 추가하는 것도 매우 간단합니다. 다음 코드는 personObj에 eat()이라는 메서드를 추가합니다.

personObj.eat=eat

2. 객체에 대한 템플릿을 생성합니다.

템플릿은 객체의 구조를 정의합니다. 개체.

function person(firstname,lastname,age,eyecolor) { this.firstname=firstname this.lastname=lastname this.age=age this.eyecolor=eyecolor }

참고: 템플릿은 다음과 같습니다. 그냥 기능. 함수 내에서 this.propertiName에 콘텐츠를 할당해야 합니다.

템플릿이 있으면 다음과 같이 새 인스턴스를 만들 수 있습니다.

myFather=new person("John","Doe",50,"blue") myMother=new person ("Sally","Rally",48,"green")

person 개체에 특정 메서드를 추가할 수도 있습니다. 그리고 템플릿 내에서도 작동해야 합니다:

function person(firstname,lastname,age,eyecolor) { this.firstname=firstname this.lastname=lastname this.age=age this.eyecolor=eyecolor this .newlastname =newlastname }

참고: 메소드는 객체에 첨부된 함수일 뿐입니다. 그런 다음 newlastname() 함수를 작성해야 합니다.

function newlastname(new_lastname) { this.lastname=new_lastname }

Newlastname() 함수는 사람의 새 성을 정의하고 이를 다음에 할당합니다. 사람. "this."를 사용하면 JavaScript는 사용자가 누구를 가리키는지 알 수 있습니다. 이제 myMother.newlastname("Doe")라고 쓸 수 있습니다.


성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.