位置: 编程技术 - 正文

Javascript学习笔记8 用JSON做原型(javascript怎么学)

编辑:rootadmin
代码如下: 但是我们是不能重用这个对象的,我们如何把这个对象作为原型的呢? 首先,在一个JSON对象有一个构造方法是不可能的了,那么我们就做一个简单的“工厂”吧,写一个方法来专门负责创建。 但是通过这个方法我们却发现,我们没有办法用People作为原型,让我们回顾一下:Javascript学习笔记7——原型链的原理 这篇文章,我们想一下这个过程: var p=new People();==>p.__proto__=People.prototype。于是当我们p.SayHello()的时候就会去People.prototype中去找,结果什么都找不到。 如果可以People.prototype.SayHello=function(){}就可以解决这个问题。但是我们知道,只有function才可以有prototype。 那么我们想想之前的推导公式,怎么样能让p.SayHello()呢?如果可以p.__proto__=People就好了。那么我们想个办法: 既然在new的时候,某个对象的__proto__只能等于某个函数的prototype,我们设置一个函数X,令p.__proto__=X.prototype,我们再令X.prototype=People。这样的关系是这样: 这样就相当于用X做了一个中间变量,使得我们可以访问JSON对象的内部属性。但是这样是不是不太优雅呢?我们每次创建一个对象时,都需要来写这样一个辅助的函数。那好,我们就把这个过程封装起来: 但是这样也有一个缺点,就是每次我增加一个类,就需要向Factory里注册一个新方法,这样是很麻烦的,我在很久以前的 玩转方法:call和apply 中说过关于call和apply的区别,因为这里的参数不固定,我们不可能一一列举,因此我们在这里可以用apply来改善这个方法: 这样,一个完整的创建类就诞生了!那么我们每次创建“类”时就都可以用JSON来做了,然后用户每次都统一来调用Factory.Create()就可以了!

推荐整理分享Javascript学习笔记8 用JSON做原型(javascript怎么学),希望有所帮助,仅作参考,欢迎阅读内容。

Javascript学习笔记8 用JSON做原型(javascript怎么学)

文章相关热门搜索词:javascript学习指南,javascript总结笔记,javascript怎么学,javascript教程,javascript基础笔记,javascript基础笔记,javascript学习指南,javascript入门教程,内容如对您有帮助,希望把文章链接给更多的朋友!

Javascript学习笔记9 prototype封装继承 好,那就让我们一步步打造,首先让我们来看下继承原本的写法:scriptvarPerson=function(name,age){this.name=name;this.age=age;}Person.prototype.SayHello=function(){alert(this.n

Javascript 读书笔记索引贴 一.基础篇Javascript学习笔记1数据类型Javascript学习笔记2函数Javascript学习笔记3作用域Javascript学习笔记4Eval函数Javascript学习笔记5类和对象Javascript学习笔记6

JavaScript 学习笔记(九)call和apply方法 call和apply方法call方法可改变上下文this指针,类似的方法还有apply,主要用在js对象各方法互相调用的时候,使当前this实例指针保持一致,或在特殊情况

标签: javascript怎么学

本文链接地址:https://www.jiuchutong.com/biancheng/382901.html 转载请保留说明!

上一篇:Javascript学习笔记7 原型链的原理(javascript如何学)

下一篇:Javascript学习笔记9 prototype封装继承(javascript教程)

  • 离岸价的含义
  • 增量留抵退税会计处理
  • 支付的画图费没有发票要如何处理
  • 买新车时旧车置换新车划算吗
  • 固定资产丢失
  • 如何查发票是否被红冲
  • 费用退回怎么做账
  • 房地产结转收入是什么意思
  • 非独立核算的分公司是什么意思
  • 进项和销项不符的税务处理
  • 股权转让印花税减半征收政策
  • 普通发票离线限额为0
  • 一个项目可以有几个单位工程
  • 公司股东会承担法律责任吗
  • 公益性捐赠公告
  • 企业网银使用
  • 机票退票费能抵扣旅客进项税吗
  • 参加国外展会费用
  • 2019小规模纳税人增值税起征点
  • 外币应收账款汇兑损失计入
  • 酒店固定资产明细表范本
  • 填报企业年报
  • 企业捐赠扣除
  • 公司转账给法人最多可以转多少
  • 贸易公司购入商品会计分录
  • 投标财务状况报告怎么提供
  • 企业债券投资利息怎么算
  • 服务设计合同标准版
  • 安装监控违法吗
  • 收到折扣发票怎么处理
  • 房地产销售代理是什么意思
  • 电脑右下角总是弹出广告
  • 冰川洞洞打法
  • web前端视频教程全套
  • 科目汇总表一页不够写怎么办
  • 普通发票两联都盖章吗
  • 土方专用发票
  • python怎么用
  • mongodb添加数据
  • 加工企业的税怎么算
  • 以前年度损益调整结转到本年利润吗
  • 清卡操作流程
  • 计提工会经费是什么工资项目
  • sqlserver2008数据迁移
  • sql分组计算
  • 研发人员工资加计扣除以实发
  • 堤围防护费是什么
  • 不动产进项税额转出
  • 设备投资要开票吗
  • 购买食品应注意哪些问题?
  • 一个身份证可以实名几个qq
  • 商业企业批发商是什么
  • 在linux系统中安装软件
  • sqlserver响应好慢
  • innodb_trx表
  • Ubuntu 12.04/14.04 LTS版内核更新 修复七个重大安全漏洞
  • freebsd怎么用
  • dwrg_repair.exe什么意思
  • windows8怎么用
  • windowsxp如何重装ie浏览器重装
  • gwsystemservice.exe是什么进程 有什么作用 gwsystemservice进程查询
  • win10的qq
  • 自动备份文件并发送到Gmail (适用G级数据的备份)
  • linux的命令行指的是什么
  • cocos creator 动画制作
  • 微信公众号javascript
  • python中判断
  • python的入门教程
  • get调用接口
  • js判断字符串字符出现的次数
  • js展示
  • js设计原则
  • shell 批量删除
  • java clone用法
  • js实现类
  • wordpress 0day
  • 基层税务工作难点重点热点
  • 深圳发票真伪查询入口
  • 国家税务总局公务员招录公告
  • 国家税务总局资阳市雁江区税务局
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设