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

[js]js设计模式小结

js设计模式小结

1312420-20180205154432935-1027938585.png

工厂模式/构造函数--减少重复
            - 创建对象有new
            - 自动创建obj,this赋值
            - 无return

原型链模式 - 进一步去重

类是函数数据类型,每个函数都有prototype
                                    constructor->指向原型本身
                                    __proto__->指向object类的prototype地址

实例是对象数据类型:每个对象都有__proto__属性->指向所属类的prototype地址

1312420-20180205154448545-1195462916.png

js对原型的操作

给原型添加属性

    - Fn.prototype.sum=function{}
    - Fn.prototype={} //constructor指向了Object的原型
                                  console.log(f.constructor); // 指向了object
                                  console.log(Fn.prototype); //里面没有constructor 了
                                  //这种情况弊端:
                                 原型上对象{} 改了,对应实例的属性也会发生变化

修改原型既有的属性:

    f1.__proto__.sum //ie禁止
    Fn.prototype.sum

转载于:https://www.cnblogs.com/iiiiiher/p/8417900.html

相关文章:

  • 创建链接服务器
  • 每天一杯C_C89、C99、C11等之C语言标准
  • 如何禁止windowsxp启动时检测硬盘?
  • [TS] Class Properties Public, Private and Read Only Modifiers
  • JavaScript高级程序设计(第3版)pdf
  • head first 设计模式pdf
  • codeforce 140A - New Year Table
  • 微信小程序------代码构成
  • 斐波那契数列集锦
  • java学习书籍推荐
  • HDU 1568 Fibonacci
  • Hadoop2.6.0单机伪分布式安装
  • jquery获取表单值的利器:serialize()
  • COGS.264.数列操作(分块 单点加 区间求和)
  • HDU 2196 Computer 经典树形DP
  • JavaScript-如何实现克隆(clone)函数
  • (ckeditor+ckfinder用法)Jquery,js获取ckeditor值
  • Java 11 发布计划来了,已确定 3个 新特性!!
  • java架构面试锦集:开源框架+并发+数据结构+大企必备面试题
  • js作用域和this的理解
  • Just for fun——迅速写完快速排序
  • markdown编辑器简评
  • RxJS: 简单入门
  • 不用申请服务号就可以开发微信支付/支付宝/QQ钱包支付!附:直接可用的代码+demo...
  • 软件开发学习的5大技巧,你知道吗?
  • 实战|智能家居行业移动应用性能分析
  • 小程序、APP Store 需要的 SSL 证书是个什么东西?
  • 以太坊客户端Geth命令参数详解
  • 正则与JS中的正则
  • MyCAT水平分库
  • ​LeetCode解法汇总518. 零钱兑换 II
  • #{} 和 ${}区别
  • #mysql 8.0 踩坑日记
  • $NOIp2018$劝退记
  • (每日持续更新)信息系统项目管理(第四版)(高级项目管理)考试重点整理第3章 信息系统治理(一)
  • (三分钟)速览传统边缘检测算子
  • (实战)静默dbca安装创建数据库 --参数说明+举例
  • (续)使用Django搭建一个完整的项目(Centos7+Nginx)
  • (一)kafka实战——kafka源码编译启动
  • (转)h264中avc和flv数据的解析
  • **登录+JWT+异常处理+拦截器+ThreadLocal-开发思想与代码实现**
  • .NET 2.0中新增的一些TryGet,TryParse等方法
  • .NET Remoting Basic(10)-创建不同宿主的客户端与服务器端
  • .NET WebClient 类下载部分文件会错误?可能是解压缩的锅
  • .NET 中让 Task 支持带超时的异步等待
  • .NET中的Event与Delegates,从Publisher到Subscriber的衔接!
  • @require_PUTNameError: name ‘require_PUT‘ is not defined 解决方法
  • [100天算法】-x 的平方根(day 61)
  • [ACM] hdu 1201 18岁生日
  • [android] 请求码和结果码的作用
  • [android] 天气app布局练习
  • [Asp.net mvc]国际化
  • [C puzzle book] types
  • [C#]winform利用seetaface6实现C#人脸检测活体检测口罩检测年龄预测性别判断眼睛状态检测
  • [C++进阶篇]STL中vector的使用