javascript创建对象简单的说,无非就是使用内置对象或各种自定义对象,当然还可以用JSON;但写法有很多种,也能混合使用。
1、对象字面量的方式
2、用function来模拟无参的构造函数
1 function Person(){}
2
3 var person=new Person();//定义一个function,如果使用new"实例化",该function可以看作是一个Class
4
5 person.name="Mark";
6 person.age="25";
7 person.work=function(){
8 alert(person.name+" hello...");
9 };
10 person.work();
3、用function来模拟参构造函数来实现(用this关键字定义构造的上下文属性)
1 function Pet(name,age,hobby){
2 this.name=name;//this作用域:当前对象
3 this.age=age;
4 this.hobby=hobby;
5 this.eat=function(){
6 alert("我叫"+this.name+",我喜欢"+this.hobby+",是个程序员");
7 }
8 }
9 var maidou =new Pet("麦兜",25,"coding");//实例化、创建对象
10 maidou.eat();//调用eat方法
4、用工厂方式来创建(内置对象)
1 var wcDog =new Object();
2 wcDog.name="旺财";
3 wcDog.age=3;
4 wcDog.work=function(){
5 alert("我是"+wcDog.name+",汪汪汪......");
6 };
7 wcDog.work();
5、用原型方式来创建
function Dog(){
}
Dog.prototype.name="旺财";
Dog.prototype.eat=function(){
alert(this.name+"是个吃货");
};
var wangcai =new Dog();
wangcai.eat();
6、用混合方式来创建
1 function Car(name,price){
2 this.name=name;
3 this.price=price;
4 }
5 Car.prototype.sell=function(){
6 alert("我是"+this.name+",我现在卖"+this.price+"万元");
7 };
8 var camry =new Car("凯美瑞",27);
9 camry.sell();