浅谈原型对象的常用开发模式


Posted in Javascript onJuly 22, 2017

1、构造函数和原型组合使用模式:原型对象虽然可以对所有实例的属性和方法共享,但是也有它的局限性,正是因为可以共享,也导致某一个实例对象若改变了共享的属性和方法,其他对象在使用时会收到影响。

所以可以组合使用构造函数式和原型模式,在实际开发中这种模式也应用的最为广泛。

2、动态原型模式:就是把属性和方法都封装到构造函数中

例如:

function Person(name,age,sex){
    this.name=name;
    this.age=age;
    this.sex=sex;
    if(typeof this.sayName!=="function"){
      Person.prototype.sayName=function(){
        console.log(this.name);
      }
    }
}

3、稳妥构造函数模式:由道格拉斯提出的,就是没有公共属性,也不实用this和new,稳妥模式最适合在安全的环境中使用,如果程序对于安全性的要求很高,那么非常适合这种模式。

例如:

function Person(name,age){
  var obj=new Object();
  obj.name=name;
  obj.age=age;
  obj.sayName=function(){
    console.log(this.name);
  }
  return obj;
}

以上这篇浅谈原型对象的常用开发模式就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
jQuery库与其他JS库冲突的解决办法
Feb 07 Javascript
Js+Flash实现访问剪切板操作
Nov 20 Javascript
js作用域及作用域链概念理解及使用
Apr 15 Javascript
jQuery关于导航条背景切换效果实现示例
Sep 04 Javascript
Javascript函数式编程语言
Oct 11 Javascript
深入解析JavaScript中的立即执行函数
May 21 Javascript
详解vee-validate的使用个人小结
Jun 07 Javascript
js实现上传并压缩图片效果
Jan 10 Javascript
vue 子组件向父组件传值方法
Feb 26 Javascript
JS实现点击按钮可实现编辑功能
Jul 03 Javascript
JavaScript执行环境及作用域链实例分析
Aug 01 Javascript
layui table表格数据的新增,修改,删除,查询,双击获取行数据方式
Nov 14 Javascript
浅谈事件冒泡、事件委托、jQuery元素节点操作、滚轮事件与函数节流
Jul 22 #jQuery
JS实现微信摇一摇原理解析
Jul 22 #Javascript
一个简易的js图片轮播效果
Jul 22 #Javascript
基于JS脚本语言的基础语法详解
Jul 22 #Javascript
JS原生轮播图的简单实现(推荐)
Jul 22 #Javascript
JS+HTML5实现图片在线预览功能
Jul 22 #Javascript
JQuery和html+css实现带小圆点和左右按钮的轮播图实例
Jul 22 #jQuery
You might like
《PHP边学边教》(01.开篇――准备工作)
2006/12/13 PHP
带密匙的php加密解密示例分享
2014/01/29 PHP
php实现cookie加密的方法
2015/03/10 PHP
fckeditor上传文件按日期存放及重命名方法
2015/05/22 PHP
php实现的单一入口应用程序实例分析
2015/09/23 PHP
php实现三级级联下拉框
2016/04/17 PHP
PHP PDO操作MySQL基础教程
2017/06/05 PHP
Javascript 实现TreeView CheckBox全选效果
2010/01/11 Javascript
Asp.net下使用Jquery Ajax传送和接收DataTable的代码
2010/09/12 Javascript
详解jquery uploadify 上传文件
2013/11/09 Javascript
js自定义瀑布流布局插件
2017/05/16 Javascript
Javascript实现找不同色块的游戏
2017/07/17 Javascript
JS声明对象时属性名加引号与不加引号的问题及解决方法
2018/02/16 Javascript
Vue中多个元素、组件的过渡及列表过渡的方法示例
2019/02/13 Javascript
vue滚动tab跟随切换效果
2020/06/29 Javascript
VSCode launch.json配置详细教程
2020/06/18 Javascript
微信小程序换肤功能实现代码(思路详解)
2020/08/25 Javascript
[01:10:24]DOTA2-DPC中国联赛 正赛 VG vs Aster BO3 第一场 2月28日
2021/03/11 DOTA
深入理解Python3 内置函数大全
2017/11/23 Python
Flask模拟实现CSRF攻击的方法
2018/07/24 Python
python数据结构学习之实现线性表的顺序
2018/09/28 Python
python使用tkinter库实现五子棋游戏
2019/06/18 Python
Flask教程之重定向与错误处理实例分析
2019/08/01 Python
Python collections模块使用方法详解
2019/08/28 Python
Python FFT合成波形的实例
2019/12/04 Python
python操作redis数据库的三种方法
2020/09/10 Python
python基于opencv 实现图像时钟
2021/01/04 Python
全球最大的网上自行车商店:Chain Reaction Cycles
2016/12/02 全球购物
naturalizer加拿大官网:美国娜然女鞋
2017/04/04 全球购物
函授大专自我鉴定
2013/11/01 职场文书
学习党章思想汇报
2014/01/07 职场文书
《小白兔和小灰兔》教学反思
2014/02/18 职场文书
《打电话》教学反思
2016/02/22 职场文书
解决python存数据库速度太慢的问题
2021/04/23 Python
vue 实现上传组件
2021/05/31 Vue.js
css样式important规则的正确使用方式
2022/06/10 HTML / CSS