当前位置:首页 > H5 > 正文内容

js 工厂模式示例,js工厂模式原理

高老师8年前 (2017-10-05)H51656

查看文章前你需要了解以下2点:

//1.this指向的是windows对象,通过console.log(this)可以查看到对象包含所有的方法和属性

//2.全局变量属于this对象的属性通过console.log(this)可以查看到对象包含我们设置的全局变量

我们经常在创建相同结构的Js对象会重复的设置对象属性和方法,造成太多的冗余代码,例如下面:

var box1=new Object();
box1.name='张三';
box1.age =14;

var box2=new Object();
box2.name='李四';
box2.age =15;

我们为什么不用赋值的方式重写呢?因为对象属于引用类型,赋值后2个变量依旧引用同一个内存地址,一个发生变化,另一值也发生了变化。于是有了工厂模式

 function  createobject(name,age){
        var obj=new Object();
        obj.name=name;0

        obj.age=age;
        obj.run=function(){
        	return this.name+'--'+this.age;
        }
        return obj;
 }
var box1=createobject('高久峰',23);
var box2=createobject('某美女',24);

以上的工厂模式只是封装一个创建对象的方法,工厂模式的确解决的创建多个对象的问题,但是缺点是我们无法识别对象,因为它们都从属于Object对象。解决这个问题可以看看js构造函数文章。本站搜索。

扫描二维码推送至手机访问。

版权声明:本文由高久峰个人博客发布,如需转载请注明出处。

本文链接:https://blog.20230611.cn/post/257.html

分享给朋友:

“ js 工厂模式示例,js工厂模式原理” 的相关文章

HTML5的离线缓存技术

HTML5的离线缓存技术

离线缓存的开启实例使用apache设置 1.apache配置文件搜索Addtype,我的addtype已经存在项目,如下    AddType application/x-compress .Z    AddType application/x-gz...

百度地图,腾讯地图生成导航链接

百度地图,腾讯地图生成导航链接

https://3gimg.qq.com/lightmap/v1/marker/index.html?marker=coord:37.6767600000,112.7297800000&key=TKUBZ-D24AF-GJ4JY-JDVM2-IBYKK-KEBCU&referer=p...

websql的使用方法

websql的使用方法

<!--          三个核心方法          openDatabase:这个方法使用现有数据库或创建...

Javascript绑定事件和移除事件

Javascript绑定事件和移除事件

<!DOCTYPE html> <html> <head> <title></title> <meta charset="utf-8"> </head> <body>...

 js获取当前位置信息, js获取当前位置经纬度

js获取当前位置信息, js获取当前位置经纬度

<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title></title> </head> <body>...

Js显示本周星期对应的日期,非固定,周一,周三,周六

Js显示本周星期对应的日期,非固定,周一,周三,周六

开发需求如下,商品下单后需要指定送到日期:送达日期为周一 周三  周六 ,如果今天周一,用户选择周一即为下一周周一。代码如下:<html> <head> <meta charset="utf-8"> <title>...