> 웹 프론트엔드 > JS 튜토리얼 > javascript 객체_javascript 기술 생성 및 액세스

javascript 객체_javascript 기술 생성 및 액세스

WBOY
풀어 주다: 2016-05-16 15:11:34
원래의
1186명이 탐색했습니다.

JavaScript에는 클래스가 없기 때문에 객체 지향 언어가 아니라고 말하는 사람들도 있습니다. 예, JavaScript에는 실제로 클래스가 없지만 JavaScript는 객체 지향 언어입니다. JavaScript에는 객체만 있고 객체는 클래스의 인스턴스가 아닌 객체입니다.
대부분의 객체지향 언어의 객체는 클래스를 기반으로 하기 때문에 사람들은 클래스 인스턴스와 객체의 개념을 혼동하는 경우가 많습니다. 객체는 클래스의 인스턴스입니다. 이는 대부분의 언어에서 사실이지만 JavaScript에서는 그렇지 않습니다. JavaScript의 객체는 프로토타입 기반입니다.

생성 및 액세스

JavaScript의 객체는 실제로 속성으로 구성된 연관 배열입니다. 속성은 이름과 값으로 구성됩니다. 값의 유형은 모든 데이터 유형일 수도 있고 함수 또는 기타 객체일 수도 있습니다. JavaScript에는 함수형 프로그래밍의 특성이 있으므로 함수도 변수 유형이며 대부분의 경우 일반 데이터 유형과 구별할 필요가 없습니다.

JavaScript에서는 다음을 사용하여 간단한 개체를 만들 수 있습니다.

var foo = {};
foo.prop_1 = 'bar';
foo.prop_2 = false;
foo.prop_3 = function() {
return 'hello world';
}
console.log(foo.prop_3());

로그인 후 복사

위 코드에서는 var foo = {}를 통해 객체를 생성하고 해당 참조를 foo에 할당합니다.
foo.prop1을 통해 해당 멤버를 가져오고 값을 할당합니다. 여기서 {}는 객체 리터럴의 표현 방법이거나 var foo = new Object()를 사용하여 명시적으로 객체를 생성할 수 있습니다.
1. 연관 배열을 사용하여 객체 멤버에 액세스
연관 배열 패턴을 사용하여 객체를 생성할 수도 있습니다. 위 코드는 다음과 같이 수정됩니다.

var foo = {};
foo['prop1'] = 'bar';
foo['prop2'] = false;
foo['prop3'] = function() {
return 'hello world';
}

로그인 후 복사
JavaScript에서 마침표 연산자를 사용하는 것은 연관 배열 참조와 동일합니다. 즉, 모든 객체(

포함) 이 포인터)는 두 모드를 모두 사용할 수 있습니다. 연관 배열을 사용하면 객체의 속성 이름을 모를 때 변수를 연관 배열의 인덱스로 사용할 수 있다는 장점이 있습니다. 예:

var some_prop = 'prop2';
foo[some_prop] = false;

로그인 후 복사

2. 객체 초기화를 사용하여 객체 생성
위 방법은 JavaScript 객체의 정의에 대한 이해를 돕기 위한 것입니다. 실제로 사용할 때는 다음과 같은 보다 간결하고 명확한 방법을 사용하겠습니다.

var foo = {
  'prop1': 'bar',
  prop2: 'false',
  prop3: function (){
  return 'hello world';
  }
};

로그인 후 복사
이 정의된 메서드를 개체의 초기화 프로그램이라고 합니다. 이니셜라이저를 사용할 때 객체 속성 이름을 인용할지 여부는 선택 사항입니다. 속성 이름에 모호함을 유발할 수 있는 공백이나 기타 문자가 없으면 따옴표를 사용할 필요가 없습니다.

위 내용은 JavaScript로 객체를 생성하고 접근하는 구현 방법입니다. 모든 분들의 학습에 도움이 되길 바랍니다.

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
최신 이슈
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿