黑马程序员技术交流社区
标题: 【太原校区】 [打印本页]
作者: 郝永亮 时间: 2019-4-10 16:00
标题: 【太原校区】
JS对象常见的三种创建方式1.工厂模式
1.1使用方式将创建对象的复杂步骤封装到函数中。
1.2优点可以很方便的创建很多对象
1.3缺点无法判断创建出来的对象的类型
1.4代码[JavaScript] 纯文本查看 复制代码
function createPerson(name,age){
var obj = new Object();
obj.name = name;
obj.age = age;
return obj;
}
var p1 = createPerson("jack",14);
console.log(p1.name+":"+p1.age);
2.构造函数模式2.1使用方式1.使用function定义构造方法
2.构造函数的首字母必须大写,用来区分于普通函数
3.内部使用的this操作属性和行为
4.使用new来生成实例对象
2.2优点可以很容易区分使用构造函数创建出来的对象的数据类型
2.3缺点所有的实例对象都可以继承构造函数中的属性和方法,但是同一个实例之间,无法共享属性。
2.3代码[AppleScript] 纯文本查看 复制代码
function Person(name,age){
this.name = name;
this.age = age;
}
var p1 = new Person("jack",13);
console.log(p1.name+":"+p1.age);
console.log(p1.constructor == Person);
3.原型模式
3.1使用方式语法:构造函数名.prototype.属性/方法 = 值
3.2优点同一个对象实例之间,可以共享属性
3.3缺点
所有的方法和属性都被共享
3.4代码[AppleScript] 纯文本查看 复制代码
function Person(name,age){
this.name = name;
this.age = age;
}
Person.prototype.address = "北京";
var p1 = new Person("jack",14);
var p2 = new Person("rose",14);
console.log(p1.address);
console.log(p2.address);
作者: miaoxiong 时间: 2019-4-12 01:59
作者: liudongjie 时间: 2019-4-18 10:05


作者: 张志辉 时间: 2019-4-18 11:55
| 欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) |
黑马程序员IT技术论坛 X3.2 |