JavaScript 객체지향 기본 지식
1. 클래스를 정의하고 다음 구문을 사용하여 클래스를 만드는 방법
function Person(name, age){ //习惯上第一个字母大写 //this修饰的变量称为属性 this.name = name; this.age = age; //如果属性值是一个函数,则这个属性就是一个方法 this.play = function(){ alert('play football...'); }; }
2. 이 클래스의 인스턴스를 만드는 방법
var p = new Person('zs', 22); p.play(); p.name;
3. 자바스크립트 객체를 생성하는 다른 두 가지 방법
(1) 먼저 객체 유형의 인스턴스를 생성한 다음 새 속성과 메서드를 추가합니다
javascript는 런타임에 객체에 새로운 속성과 메소드를 추가할 수 있는 동적 언어입니다.
var obj = new Object(); obj.name = 'zs'; obj.age = 22; obj.play = function(){ alert('play...'); };
(2) "json" 구문
var p = {'name':'zs','age':22}; ar p = {'name':'zs','play':function(){ alert('hello'); };
또는
var p = {name:'zs',age:22,marrid:false}; var p = {name:'zs',play:function(){ alert('hello'); }};속성값 문자열인 경우 반드시 따옴표(단수, 이중)로 묶어야 합니다속성값은 number, string, boolean, null, Object를 허용합니다
var p = {name:'zs', address:{ city:'beijing', street:'ca' } };전체 예시
<html> <head> <script> function f1(){ //var p = {'name':'zs','age':22}; //var p = {name:'zs',age:22,marrid:false}; var p = {name:'zs', address:{ city:'beijing', street:'ca' } }; //alert(p.name); alert(p.address.city); } function f2(){ var arr = [ {'name':'zs','age':22}, {'name':'ls','age':32} ]; alert(arr[1].name); } </script> </head> <body> <input type="button" value="click me" onclick="f2();"/> </body> </html>