js创建对象的方式有很多种,每种方式都有各自的优缺点,所以选择一个合适的创建对象的方式是很重要的,下面的内容为大家介绍了js创建方式的几种方式。
1.工厂模式
function createPerson(name){
//1、原料
var obj=new Object();
//2、加工
obj.name=name;
obj.showName=function(){
alert(this.name);
}
//3、出场
return obj;
}
var p1=createPerson('小米');
p1.showName();优点:解决了创建相似对象的问题
缺点:并不能zhi知道一个对象的lei'类型
2.构造函数
function CreatePerson(name){
this.name=name;
this.showName=function(){
alert(this.name);
}
}
var p1=new CreatePerson('小米');优点:可以将一些实例表示为一种特定的类型
缺点:方法会在每个实例上都重新创建一遍遍
3.原型
function Person(){}
Person.prototype.name="小米";
Person.prototype.showName=function(){
alert(this.name);
}
var p1=new Person();
p1.showName();优点:属性和方法定义在原型上 ,故每个实例可以共享属性和方法
缺点:实例的属性不能私有化
4.混合式(构造函数+原型)
function CreatePerson(name){
this.name=name;
}
Create.prototype.showName=function(){
alert(this.name);
}
var p1=new CreatePerson('小米');
p1.showName();
var p2=new CreatePerson('小米');
p2.showName();
alert(p1.showName==p2.showName);//true;原因:都是在原型下面,在内存中只存在一份,地址相同通过构造函数来定义属性,原型来定义方法和共享的属性。
5.字面量
person={
name:"小米",
age:23
};相关推荐:
以上就是js创建对象的方式及其特点的详细内容,更多请关注php中文网其它相关文章!
每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号