중화사전망 - 자전 검색 - 객체 지향 js 의 여러 방법
객체 지향 js 의 여러 방법
(1) 내장 객체 사용
(2) JSON 기호 사용
(3) 사용자 객체 구성
먼저 내장 오브젝트를 사용합니다
JavaScript 에는 다음과 같은 두 가지 내장 객체가 있습니다.
1, JavaScript 기본 객체 (언어 레벨 객체), 문자열, 객체, 함수 등.
2.JavaScript 런타임시 창, 문서, 본문 등과 같은 숙주 객체 (환경 숙주 수준 객체).
기본 제공 객체 사용은 JavaScript 언어의 기본 객체 구성 방법을 통해 새 객체를 인스턴스화하는 것을 의미합니다. 예를 들면 다음과 같습니다.
코드 복사 코드는 다음과 같습니다.
Var str = new String ("인스턴스 초기화 문자열");
Var str 1 = "직접 할당된 문자열";
Var func = 새 함수 ("x", "alert (x)"); //예 func 초기화
Var o = new object (); //예제 객체 초기화
둘째, JSON 기호를 사용합니다
(a) JSON 이란 무엇입니까?
JSON (JavaScript 객체
JavaScript 객체 이름 지정인 Notation 은 읽기/쓰기가 쉽고 구문 분석 및 생성이 쉬운 경량 데이터 교환 형식입니다. 그것은
자바스크립트 프로그래밍 언어, 표준 ECMA-262 제 3 판-
12 월 1999 의 하위 집합. JSON 은 언어에 완전히 독립적인 텍스트 형식이므로 데이터 교환에 이상적입니다.
JSON as
자바스크립트 자신, ActionScript, c, C#, ColdFusion, e, Java, 자바스크립트, ML,
ObjectiveCAML, Perl, PHP, Python, Rebol, Ruby, Lua 등 다양한 언어가 지원되어 Ajax 가 JSON 을 개발할 수 있게 되었습니다.
선호。
JSON 을 구축하는 방법에는 두 가지가 있습니다. 하나는 객체, 레코드, 구조, 사전, 해시 테이블, 키 목록 또는 연관 배열로 해석되는 간단한 "키/값 쌍" 세트를 사용하는 것입니다. 다른 하나는 대부분의 언어에서 배열로 해석되는 정렬된 값 목록을 사용하는 것입니다.
일반적인 작성 방법은 첫 번째, 즉 키/값 쌍 집합의 형태입니다. 이 형식에서 객체는 "{"(왼쪽 괄호) 로 시작하고 "}" (오른쪽 괄호) 로 끝납니다. 각 "이름" 뒤에는 ":"(콜론), "이 있습니다
키/값 쌍은 ","(쉼표) 로 구분됩니다.
JSON 은 다음과 같은 특징을 가지고 있습니다. (1) 간단한 포맷 데이터 교환 (2) 사람들의 읽기 및 쓰기 습관을 용이하게한다. (3) 기계를 쉽게 분석하고 실행할 수 있습니다.
JSON 은 JavaScript 에서 객체로 해석됩니다. 문자열 형식의 JSON 을 사용하면 데이터를 전용 JavaScript 로 쉽게 구문 분석하고 데이터를 읽고 전송할 수 있습니다. JSON 을 통해 JavaScript 객체가 매개 변수로 직렬로 전달될 수 없는 문제가 어느 정도 해결되었습니다.
1, 단순 JSON
{이름:' 유덕화', 나이:' 25', 성별:' 남자'}
2, JSON 값 유형
JSON 의 값은 숫자, 부동 소수점, 문자 등과 같은 간단한 데이터 유형일 수 있습니다. , 또는 배열 및 객체. 예를 들어 JSON 은 배열을 member 의 키 값으로 사용합니다.
{멤버: [{이름: "유덕화"}, {이름: "궈푸청"}, {이름: "장학우"}, {이름: "여명"}]}
{
책: [{이름:' 삼국연의'}, {이름:' 서유기'}, {이름:' 수호전'}, {이름:' 홍루몽'}],
저자: [{이름:' 나관중'}, {이름:' 오승은'}, {이름:' 슈나이암', {이름:' 조설미나리'}]
}
3, JavaScript 에서 JSON 사용
JSON 은 JavaScript 의 기본 형식이므로 JavaScript 에서 JSON 데이터를 처리하기 위해 특별한 API 나 툴킷이 필요하지 않습니다. 기본적으로 JavaScript 는 JSON 을 하나의 객체로 취급합니다.
객체를 변수에 전달합니다. 예를 들면 다음과 같습니다.
코드 복사 코드는 다음과 같습니다.
Var somebooks = {
책: [{이름:' 삼국연의'}, {이름:' 서유기'}, {이름:' 수호전'}, {이름:' 홍루몽'}],
저자: [{이름:' 나관중'}, {이름:' 오승은'}, {이름:' 슈나이암', {이름:' 조설미나리'}]
}
JSON 의 각 "키" 는 책의 첫 번째 항목에 액세스하는 것과 같은 개체의 속성에 해당합니다. 자바스크립트에서는 단순히 "somebooks.book[0]" 을 사용할 수 있습니다. 이름 "은" 삼국연의 "의 가치를 얻기 위해 왔다.
JSON 문자열을 객체로 변환할 수 있을 뿐만 아니라 JavaScript 에서 객체를 쉽게 전송할 수 있도록 객체를 JSON 문자열로 "컴파일" 할 수 있습니다. 예를 들면 다음과 같습니다.
코드 복사 코드는 다음과 같습니다.
Var animals = new object ();
Animals.name = "dog
Animals.sex = "Male
Animals.age = "2
동물 개체는 직렬화하고 전송할 수 없습니다. Animals 오브젝트를 JSON 문자열로 변환합니다. 즉, "{이름:" 개 ",성별:" 남자 ",나이:" 2 "}" 입니다. 이렇게 하면 JSON 문자열이 HTTP 요청의 인수로 전달되어 Animals 객체를 직렬화할 수 있습니다.
(b) JSON 은 JavaScript 객체를 문자열로 표현합니다. 예를 들면 다음과 같습니다.
코드 복사 코드는 다음과 같습니다.
Var myObject = {별명: "내 girl fried", 이름: "대
돼지 "};
JSON
실제로 JavaScript 객체와 문자열 간의 변환을 위한 프로토콜로 사용됩니다. JSON 의 "모양" 은 Dancun 의 문자열로 볼 수 있기 때문에 JSON 은
자바스크립트는 객체 전송에서 어느 정도 역할을 할 수 있다. 예를 들어, 객체 strObject 는 문자열로 변환된 후 전송되고 대상에 도달하면 eval 메소드에 의해 복구됩니다.
객체:
코드 복사 코드는 다음과 같습니다.
기능 테스트 (o)
{
경보 (o.name)
}
Var strObject =' {별명:' 내 여자 친구', 이름:' 큰 돼지'}';
테스트 (eval _ r ("+strobject+");
셋째, 사용자 객체 구성
고급 객체 구성을 작성하는 두 가지 방법은' this' 키워드를 사용하여 구성하고 prototype 프로토타입 구성을 사용하는 것입니다. 예를 들면 다음과 같습니다.
코드 복사 코드는 다음과 같습니다.
//이 키워드를 사용하여 시공의 컨텍스트 속성을 정의합니다.
함수 소녀 ()
{
This.name = "큰 돼지";
This.age = 20
이 점;
This.bust
This. 허리;
This.hip
}
//프로토타입 사용
Function Girl(){}
Girl.prototype.name = "돼지";
Girl.prototype.age = 20;
Girl.prototype.standing;
Girl.prototype.bust;
Girl.prototype. 허리;
여자. 프로토타입. 힙합;
경계 (새 여자). 이름);
위 예에서 두 정의는 본질적으로 다르지 않고 모두' Girl' 객체의 속성 정보를 정의합니다. "이것" 과 "프로토타입" 의 차이는 주로 속성이 액세스되는 순서에 있다. 예를 들면 다음과 같습니다.
코드 복사 코드는 다음과 같습니다.
기능 테스트 ()
{
This.text = function ()
{
Alert ("이것으로 정의됨");
}
}
Test.prototype.test = 함수 ()
{
Alert ("원형에 의해 정의됨");
}
Var _ o = newtest ();
_ o.test (); //내보내기 "이 정의"
객체의 속성 또는 메소드에 액세스하면 프로토타입 체인이 검색됩니다.
체인점의 규칙. 먼저 자신의 정적 속성과 메서드를 찾고, 구성 컨텍스트에 대한 액세스 가능한 속성과 메서드를 찾고, 마지막으로 구성의 프로토타입 체인을 찾습니다.
"이것"
프로토타입 정의와의 또 다른 차이점은 속성이 차지하는 공간이 다르다는 것입니다. "this" 키워드를 사용하면 예제를 초기화할 때 생성자에 포함된 모든 속성과 메서드가 각 인스턴스에 대해 열립니다.
프로토타입은 실제로 상위 객체에 대한 참조이지만 데이터의 복사본일 뿐이므로 초기화 및 저장보다 더 좋기 때문에 필요한 공간입니다.
"이것" 은 자원을 절약합니다.