创建对象的三种模式

1.调用系统的构造函数创建对象

语法:var 变量名 = new Object(); //Object是系统的构造函数

例如:
//通过系统的构造函数来创建obj对象
var obj = new Object();
//添加属性
obj.name = "小明";
obj.age = 23;
//添加方法
obj.say = function(){
    //用this关键字代表当前对象
    console.log("我叫:"+this.name+",今年"+this.age+"岁了");
    return obj;
}
obj.say();//我叫:小明,今年23岁了

2.自定义构造函数创建对象

语法:function 名(){};//名要大写


//自定义构造函数 
function Person(){
    this.name = "小明";
    this.age = 23;
    this.say = function(){
        console.log("我叫:"+this.name+",今年"+this.age+"岁了");
    }
}
//自定义构造函数创建对象,先定义一个函数,创建对象
var obj = new Person();
obj.say();//我叫:小明,今年23岁了

console.log(obj instanceof Person);//true

3.字面量的方式创建对象

语法:var 变量 = {};


 var obj = { 
     name:"小明",
     age:23,
     say:function(){
         console.log("hi,I'm"+this.name+",年龄:"+this.age);
     }
 };
 obj.say(); //hi,I'm小明,年龄:23

注意:

获取对象属性的两种方式:

例如:


function Person(name,age){
    this.name = name;
    this.age = age;
    this.say = function(){
        console.log("我叫"+this.name+",年龄:"+this.age);
    }
}
var obj = new Person("哈希",23);

方法一:
obj.name = "小贤";
console.log(log(obj.name));//小贤
方法二:
obj["name"] = "萧山";
console.log(obj["name"]);//萧山

猜你喜欢

转载自blog.csdn.net/admin_ccc/article/details/80898758