当前位置: 首页 > news >正文

网站登不了企业建设网银百度明星人气榜

网站登不了企业建设网银,百度明星人气榜,合肥哪家做网站好,网站导入dreamweaver【前端知识】JavaScript——设计模式(工厂模式、构造函数模式、原型模式) 一、工厂模式 工厂模式是一种众所周知的设计模式,广泛应用于软件工程领域,用于抽象创建特定对象的过程。 优点:可以解决创建多个类似对象的…

【前端知识】JavaScript——设计模式(工厂模式、构造函数模式、原型模式)

一、工厂模式

工厂模式是一种众所周知的设计模式,广泛应用于软件工程领域,用于抽象创建特定对象的过程。

优点:可以解决创建多个类似对象的问题

缺点:没有解决对象标识问题(即新创建的对象是什么类型)

示例:

function createPerson(name, age, job) { // 创建对象,将值赋值给该对象后,返回let o = new Object(); o.name = name; o.age = age; o.job = job; o.sayName = function() { console.log(this.name); }; // 返回对象return o; 
} 
let person1 = createPerson("Nicholas", 29, "Software Engineer"); 
let person2 = createPerson("Greg", 27, "Doctor");

二、构造函数模式

构造函数模式与工厂模式相比,没有显式地创建对象,其属性和方法直接赋值给了 this,且没有 return。

优点:定义自定义构造函数可以确保实例被标识为特定类型

缺点:其定义的方法会在每个实例上都创建一遍

示例:

// 区别1: 函数名大写,为了与普通函数区分
function Person(name, age, job){ // 区别2: 与工厂模式不同,传入的参数赋值给thisthis.name = name; this.age = age; this.job = job; this.sayName = function() { console.log(this.name); }; //  区别3: 无需返回对象
} 
// 区别4: 通过new操作符,创建Person实例
let person1 = new Person("Nicholas", 29, "Software Engineer"); 
let person2 = new Person("Greg", 27, "Doctor"); 
person1.sayName(); // Nicholas 
person2.sayName(); // Greg

注意:使用 new 操作符调用构造函数的执行过程:

步骤过程
1在内存中创建一个新对象。
2这个新对象内部的[[Prototype]]特性被赋值为构造函数的 prototype 属性。
3构造函数内部的 this 被赋值为这个新对象(即 this 指向新对象)。
4执行构造函数内部的代码(给新对象添加属性)。
5如果构造函数返回非空对象,则返回该对象;否则,返回刚创建的新对象。

三、原型模式

每个函数都会创建一个 prototype 属性,这个属性是一个对象,包含应该由特定引用类型的实例共享的属性和方法。

优点:在它上面定义的属性和方法可以被对象实例共享

缺点:所有实例在默认情况先都将取得相同的属性值

示例:

function Person() {} 
Person.prototype.name = "Nicholas"; 
Person.prototype.age = 29; 
Person.prototype.job = "Software Engineer"; 
Person.prototype.sayName = function() { console.log(this.name); 
}; 
let person1 = new Person(); 
person1.sayName(); // "Nicholas" 
let person2 = new Person(); 
person2.sayName(); // "Nicholas" 
console.log(person1.sayName == person2.sayName); // true
http://www.zhongyajixie.com/news/61821.html

相关文章:

  • 聊城建设路小学网站电脑培训班有哪些科目
  • 做网站哪个公司免费注册个人网站不花钱
  • 做平面设计用什么网站素材多网络推广渠道公司
  • 做网站的公司cnfg江东怎样优化seo
  • 搜狗网站提交网络营销员岗位的职责与要求
  • 昆山设计公司东莞网站seo优化托管
  • 政府官网网站建设标准北京网站优化排名推广
  • 南京网站建设王道下拉??辽阳网站seo
  • 做我女朋友好不好套路网站制作网站费用
  • 网站首页设计怎么写今日的重大新闻
  • 珠海哪家做企业网站公司好企业品牌推广策划方案
  • 商城购物网站设计内容标题优化方法
  • 一元夺宝网站建设2017网站结构有哪几种
  • 货到付款网站怎么做百度高级搜索技巧
  • 网站建设宝安seo综合检测
  • 莱西市城乡建设局网站网站关键字优化技巧
  • 高端品牌网站建设电商网站设计怎么样推广自己的店铺和产品
  • 微网站的优缺点活动推广软文范例
  • 网站开发文档范文百度推广课程
  • 文档做网站淘宝流量网站
  • 没有备案的网站怎么访问百度一下你就知道百度官网
  • 办公oa系统大概多少钱seo外包上海
  • 网站站长英文西安seo关键词排名优化
  • 网站的风格与布局的设计seo关键词优化工具
  • 面签拍照 网站备案网络推广策划
  • 做网站提供服务器吗网络营销类型
  • 珠海品牌型网站建设app推广项目从哪接一手
  • 网站运营推广怎做临沂百度联系方式
  • 专门做10s视频的网站整站优化外包服务
  • 温州网站关键词推广重庆seo排名电话