>웹 프론트엔드 >JS 튜토리얼 >자바스크립트에서 객체를 생성하는 방법은 무엇입니까?

자바스크립트에서 객체를 생성하는 방법은 무엇입니까?

青灯夜游
青灯夜游원래의
2021-06-29 18:24:403651검색

생성 방법: 1. "var 객체 이름 = {속성 이름 1: 값 1, 속성 이름 2: 값 2,...};" 사용 2. "var 객체 이름 = 새 생성자 이름(args) ;" 문; 3. "Object.create(프로토타입 개체, 설명자)" 문을 사용합니다.

자바스크립트에서 객체를 생성하는 방법은 무엇입니까?

이 튜토리얼의 운영 환경: Windows 7 시스템, JavaScript 버전 1.8.5, Dell G3 컴퓨터.

JavaScript에서 객체를 생성하는 방법에는 3가지가 있습니다:

  • 객체 리터럴

  • 객체 구성

  • Object.create 사용

객체 리터럴

직접 수량을 사용하세요. 신속하게 생성되며 가장 효율적이고 쉬운 방법입니다. 구체적인 사용법은 다음과 같습니다.

var objectName = {
    属性名1 : 属性值1,
    属性名2 : 属性值2,
    ...
    属性名n : 属性值n
};

객체 리터럴에서 속성 이름과 속성 값은 콜론으로 구분됩니다. 속성 값은 모든 유형의 데이터일 수 있으며 속성 이름은 JavaScript 식별자 또는 문자열 표현식일 수 있습니다. 속성은 쉼표로 구분되며 마지막 속성 끝에는 쉼표가 필요하지 않습니다.

다음 코드는 객체 리터럴을 사용하여 두 객체를 정의합니다.

var o = {  //对象直接量
    a : 1,  //定义属性
    b : true  //定义属性
}
var o1 = {  //对象直接量
    "a" : 1,  //定义属性
    "b" : true  //定义属性
}

객체 생성

new 연산자를 사용하여 생성자를 호출하여 인스턴스 객체를 생성합니다. 구체적인 사용법은 다음과 같습니다.

var objectName = new functionName(args);

매개변수 설명은 다음과 같습니다.

  • objectName: 반환된 인스턴스 개체입니다.

  • functionName: 생성자, 기본적으로 일반 함수와 동일하지만 반환 값을 반환할 필요가 없으며 인스턴스 개체를 반환하며 함수 내에서 이를 사용하여 미리 액세스할 수 있습니다.

  • args: 인스턴스 객체 초기화 구성 매개변수 목록입니다.

Example

다음 예제에서는 다양한 유형의 생성자를 사용하여 다양한 인스턴스를 정의합니다.

var o = new Object();  //定义一个空对象
var a = new Array();  //定义一个空数组
var f = new Function();  //定义一个空函数

Object.create 사용

Object.create는 인스턴스 객체를 생성하는 데 사용되는 ECMAScript 5의 새로운 정적 메서드입니다. 이 메소드는 객체의 프로토타입과 객체 속성을 지정할 수 있습니다. 구체적인 사용법은 다음과 같습니다.

Object.create(prototype, descriptors)

매개변수 설명은 다음과 같습니다.

  • prototype: 프로토타입 개체를 지정하는 필수 매개변수이며 null일 수 있습니다.
  • descriptors: 선택적 매개변수, 하나 이상의 속성 설명자를 포함하는 JavaScript 개체입니다. 속성 설명자에는 데이터 속성과 접근자 속성이 포함되며, 여기서 데이터 속성은 아래에 설명되어 있습니다.
  • value: 속성 값을 지정합니다.
  • writable: 기본값은 false이며 속성 값을 쓸 수 있는지 여부를 설정합니다.
  • enumerable: 기본값은 false입니다. 속성이 열거 가능한지(for/in) 여부를 설정합니다.
  • configurable: 기본값은 false이며, 속성 특성을 수정하고 속성을 삭제할 수 있는지 여부를 설정합니다.

접속자 기능에는 두 가지 메소드가 포함되어 있으며 간략한 설명은 다음과 같습니다.

  • set(): 속성 값을 설정합니다.

  • get(): 속성 값을 반환합니다.

Example

다음 예제에서는 Object.create를 사용하여 객체를 정의하고, null을 상속하며, 속성 값이 각각 "large" 및 "round"인 두 개의 열거 가능한 속성인 size 및 Shape를 포함합니다.

var newObj = Object.create (null, {
    size : {  //属性名
        value : "large",  //属性值
        enumerable : true  //可以枚举
    },
    shape : {  //属性名
        value : "round",  //属性值
        enumerable : true  //可以枚举
    }
});
console.log(newObj.size);  //large
console.log(newObj.shape);  //round
console.log(Object.getPrototypeOf(newObj));  //null

【관련 추천: javascript 학습 튜토리얼

위 내용은 자바스크립트에서 객체를 생성하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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