最新文章专题视频专题问答1问答10问答100问答1000问答2000关键字专题1关键字专题50关键字专题500关键字专题1500TAG最新视频文章推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37视频文章20视频文章30视频文章40视频文章50视频文章60 视频文章70视频文章80视频文章90视频文章100视频文章120视频文章140 视频2关键字专题关键字专题tag2tag3文章专题文章专题2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章专题3
当前位置: 首页 - 科技 - 知识百科 - 正文

JavaScript设计模式之构造器模式(生成器模式)定义与用法实例分析

来源:动视网 责编:小采 时间:2020-11-27 22:10:57
文档

JavaScript设计模式之构造器模式(生成器模式)定义与用法实例分析

JavaScript设计模式之构造器模式(生成器模式)定义与用法实例分析:本文实例讲述了JavaScript设计模式之构造器模式(生成器模式)定义与用法。分享给大家供大家参考,具体如下: 工厂模式虽然解决了重复实例化的问题,但无法识别对象类型。 可以采用构造函数(构造方法)可用来创建特定的对象,可以解决工厂模式无法识别对象实例的
推荐度:
导读JavaScript设计模式之构造器模式(生成器模式)定义与用法实例分析:本文实例讲述了JavaScript设计模式之构造器模式(生成器模式)定义与用法。分享给大家供大家参考,具体如下: 工厂模式虽然解决了重复实例化的问题,但无法识别对象类型。 可以采用构造函数(构造方法)可用来创建特定的对象,可以解决工厂模式无法识别对象实例的


本文实例讲述了JavaScript设计模式之构造器模式(生成器模式)定义与用法。分享给大家供大家参考,具体如下:

工厂模式虽然解决了重复实例化的问题,但无法识别对象类型。

可以采用构造函数(构造方法)可用来创建特定的对象,可以解决工厂模式无法识别对象实例的问题。也就是说,使用构造函数的方法 ,即解决了重复实例化的问题 ,又解决了对象识别的问题。

构造器模式与工厂模式的不同之处在于:

① 构造函数方法没有显示的创建对象 (new Object())

② 直接将属性和方法赋值给 this 对象;

③ 没有 return 语句。

构造函数方法的规范:

① 函数名和实例化构造名相同且大写 (非强制,但有助于区分构造函数和普通函数);

② 通过构造函数创建对象,必须使用new运算符。

function Person(name, age) {
 this.name = name;
 this.age = age;
 this.showName = function() {
 alert(this.name);
 };
}
var person1 = new Person("Alice", 23);
var person2 = new Person("Bruce", 22);

构造器模式的问题:每个方法都要在每个实例上重新创建一遍。

原因:JavaScript中的函数是对象,每定义一个函数,就是实例化了一个Funtion对象,因此,使用构造函数创建的每个实例都有一个同名的方法,但这些方法不是同一个Function的实例,因为不同实例上的同名函数是不相等的。

解决:原型模式,请见://www.gxlcms.com/article/144485.htm

更多关于JavaScript相关内容可查看本站专题:《javascript面向对象入门教程》、《JavaScript切换特效与技巧总结》、《JavaScript查找算法技巧总结》、《JavaScript错误与调试技巧总结》、《JavaScript数据结构与算法技巧总结》、《JavaScript遍历算法与技巧总结》及《JavaScript数学运算用法总结》

希望本文所述对大家JavaScript程序设计有所帮助。

文档

JavaScript设计模式之构造器模式(生成器模式)定义与用法实例分析

JavaScript设计模式之构造器模式(生成器模式)定义与用法实例分析:本文实例讲述了JavaScript设计模式之构造器模式(生成器模式)定义与用法。分享给大家供大家参考,具体如下: 工厂模式虽然解决了重复实例化的问题,但无法识别对象类型。 可以采用构造函数(构造方法)可用来创建特定的对象,可以解决工厂模式无法识别对象实例的
推荐度:
  • 热门焦点

最新推荐

猜你喜欢

热门推荐

专题
Top