javascript对象的几种创建方式
2018-03-08 16:19
246 查看
1.使用工厂方式来创建(Object关键字)
var user=new Object();user.name="huang";
user.age=21;
user.sayName=function(){
alert("我是"+user.name+"我的年龄"+user.age);
}
user.sayName();
2:使用构造函数创建对象,构造函数始终要应该以一个大写字母开头
它的缺点:就是每个方法都要在每个实例上重新创建一遍,方法指的就是我们在对象里面定义的函数。如果方法的数量很多,就会占用很多不必要的内存。function User(name,age,work){
this.name=name;//this作用域:当前对象
this.age=age;
this.work=work;
this.sayName=function(){
alert("我是"+this.name+"我的年龄"+this.age+"工作是"+this.work);
};
}
var person=new User("胡一天",18,"明星");
person.sayName();
3,原型模式prototype
function User(){};User.prototype.name="胡一天";
User.prototype.age=18;
User.prototype.sayName=function(){
alert("我是"+this.name+"我的年龄"+this.age);
};
var person=new User();
person.sayName();
4.原型模式和构造函数模式
构造函数模式用于定义实例属性,而原型模式用于定义方法和共享的属性
function User(name,age){this.name=name;
this.age=age;
}
User.prototype.sayName=function(){
alert("我是"+this.name+"我的年龄"+this.age);
}
var person=new User("刘昊然",18);
person.sayName();
5.动态原型模式
function User(name,age){this.name=name;
this.age=age;
if(typeof User.sayName=="undefined"){
User.prototype.sayName=function(){
alert("我是"+this.name+",我的年龄"+this.age);
}
User.sayName=true;
}
}
var camry =new User("凯美瑞",27);
camry.sayName();
6.寄生构造函数模式
这种模式的基本思想是创建一个函数,该函数的作用仅仅是封装创建对象的代码。寄生模式可以在特殊的情况下为对象来创建构造函数,原因在于我们可以通过构造函数重写对象的值,并通过return返回 重写调用构造函数(创建的对象的实例)之后的对象实例的新的值
function User(name,age){
var person=new Object();
person.name=name;
person.age=age;
person.sayName=function(){
alert("我是"+this.name+",我的年龄"+this.age);
}
return person;
}
var people=new User("白敬亭",18);
people.sayName();
7.稳妥构造函数模式
没有公共属性,而且其方法也不引用this的对象。稳妥对象最适合用在一些安全的环境中(这些环境会禁止使用new和this),或者防止数据被其他的应用改动。稳妥构造函数与寄生构造函数模式类似,但是也有两点区别:1、稳妥模式不使用new操作符调用构造函数2、新创建对象的实例方法不引用thisfunction User(name,age){var person=new Object();
person.sayName=function(){
alert("我是"+name+",我的年龄"+age);
}
return person;
}
var people=User("白敬亭",18);
people.sayName();
相关文章推荐
- JavaScript 创建类/对象的几种方式
- javascript创建对象的几种方式
- Javascript创建对象的几种方式
- Javascript创建对象的几种方式
- 转:javascript中创建对象的几种方式
- JavaScript创建对象的几种方式
- javascript学习(十五):js中对象的常用的几种创建方式
- javascript中创建对象的几种方式
- JavaScript 创建类/对象的几种方式
- JavaScript对象创建的几种方式及使用方法
- JavaScript 创建类/对象的几种方式
- javascript创建对象几种方式
- javascript 创建对象的几种方式
- js-JavaScript常见的创建对象的几种方式
- JavaScript创建对象几种方式
- 稳扎稳打JavaScript(三)——创建对象的几种方式
- javascript对象的几种创建方式
- javascript开发:javascript创建对象的几种方式总结
- JavaScript 创建类/对象的几种方式
- javascript中创建对象的几种方式