JavaScript는 객체 기반 프로그래밍 언어이며, 그 본질은 실제로 객체 지향입니다. 객체지향 언어의 특징은 모두 클래스라는 개념을 가지고 있으며, 이를 통해 동일한 속성과 메소드를 가진 객체를 얼마든지 생성할 수 있다는 것입니다. 하지만 JavaScript에는 클래스 개념이 없습니다. JavaScript의 객체는 일반적으로 Object를 통해 직접 객체를 생성할 수 있습니다. 예를 들어 다음 코드는
var person = new Object(); person.name = "张三"; person.age = 20; person.say = function(){ alert(this.name+","+this.age); }
위 코드에서는 간단히 Object를 통해 person 객체를 생성한 후, person 객체에 대해 2개의 속성과 1개의 메소드를 설정합니다.
위 방법으로 생성된 객체의 가장 큰 문제점은 클래스 제약이 없어 객체를 재사용할 수 없고, 합의가 이루어지지 않아 동작에 문제가 발생한다는 점이다.
Json 객체
JavaScript 객체는 네트워크를 통해 전송할 수 없으며 문자열만 네트워크를 통해 전송할 수 있습니다. 객체를 전송하는 가능한 방법은 전송을 위해 객체를 XML 형식으로 작성하는 것입니다. 예:
<?xml version="1.0" encoding="utf-8"?> <preson> <id>1</id> <name>张三</name> <age>20</age> </person>
그러나 데이터 전송을 위해 XML 형식을 사용하는 경우 전송 중에 많은 수의 추가 태그 문자열이 생성됩니다. 프로세스이므로 전송 효율은 분명히 높지 않습니다. 이러한 문제를 해결하기 위해 사람들은 또 다른 문자열 개체 형식인 Json 개체 형식을 개발했습니다.
Json의 전체 이름은 간단한 데이터 교환 형식인 javascript simple object notation입니다. Json 객체는 JavaScript 객체이지만 xml의 태그를 생략하고 {}를 사용하여 객체 설명을 완성합니다.
Json 형식은 속성 이름: 속성 값을 통해 속성을 정의합니다. 다른 속성은 쉼표(,)로 구분됩니다. 예를 들어 다음 코드는 Json 형식으로 person 개체를 정의합니다.
var person = { name : "张三", age:23, say:fuction(){ alert(this.name+","+this.age); } }
person 개체를 호출하는 속성과 메서드는 일반 JavaScript 개체에서 사용하는 것과 동일합니다. 예:
// 调用person的say方法 person.say();
또한 Json을 통해 개체 배열을 만들 수 있으며 생성 방법은 다음과 같습니다. JavaScript 배열과 동일합니다.
var ps = [ {name:"Leon",age:22}, {name:"Ada",25} ];
배열 생성을 완료한 후 배열의 Json 개체를 반복할 수도 있습니다.
for(var i = 0; i < ps.length; i++){ alert(ps[i].name); }
위 내용은 JavaScript 객체지향 - 간단한 객체 생성과 JSON 객체의 내용에 대한 자세한 내용은 PHP 중국어 홈페이지(www.php.cn)를 참고해주세요!