位置: 编程技术 - 正文

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教程)

  • 委托加工发出材料成本会计分录
  • 没有发票的房租如何入账
  • 发票开错对方已抵扣怎么处理
  • 自己打印的机票怎么退票
  • 帮别人买交强险,受益人是我,有影响吗
  • 利用个独企业避税犯法吗
  • 法定盈余公积和法定公积金一样吗
  • 股本与注册资本实收资本的区别
  • 股权转让有哪些方式
  • 销售免税货物如何开票
  • 承兑汇票转出
  • 采购部付款申请单和财务付款流程
  • 购进的固定资产多少金额可以直接进去费用
  • 月底结转都结转什么
  • 快消品应收账款风险策划方案
  • 车辆保险属于金融机构吗
  • 公司办公楼的中介怎么做
  • 什么是中型企业?
  • 本月没有发生额本月合计
  • 购买股权属于什么科目
  • 企业会计准则制度
  • 政府奖励资金如何入账
  • 网卡和网线都正确接法
  • 支付宝支付凭证图片
  • PHP验证信用卡卡号是否正确函数
  • 建筑公司收到工程款需要交哪些税
  • 销售货物货款未收的会计分录
  • 房地产佣金手续费财务处理
  • 当人力资源短缺时,用什么方法增加人力资源?
  • springboot用法
  • yolov8训练自己的数据集 Windows
  • php xml转数组
  • 印花税应计入什么
  • 服务什么行业
  • 增值税留抵税额退税政策
  • 社会团体不属于财政拨款的对象
  • 研发费用没有发票怎么做账
  • Linux下实现MySQL数据备份和恢复的命令使用全攻略
  • 织梦怎么用
  • 开房租发票交的税因优惠政策退税如何账务处理?
  • 盈余公积转增实收资本会计科目
  • 固定资产报废该怎么处理
  • 工装算劳保用品还是办公费
  • 拆迁补偿款的组成
  • 薪酬范围怎么写
  • 代销产品如何做会计分录
  • 存量资金会计处理办法
  • 产品成本计算中最基本的方法是
  • 失业人员的养老金
  • 买断式买入
  • 收到补助款的会计分录
  • 工程预缴税款的预征税额如何计算
  • 计税金额是什么科目
  • 企业低值易耗品的摊销方法有( )
  • mysql handshake
  • 在sql server中触发器不具有什么类型
  • sql语句大全实例教程
  • oracle的账户
  • ubuntu的软件
  • mac自动操作怎么停止
  • windows xp.exe
  • win10预览版和正式版区别
  • 在linux中使用什么命令可以执行shell脚本
  • 虚拟内存扩大有什么好处
  • setlang.exe - setlang是什么进程 有什么用
  • cocos2dx安装和初步使用
  • jquery中获取元素里边内容用什么方法
  • css选择器类选择器
  • 搭建nfs
  • javascript编程语言
  • python的五个特点
  • Python 常用库
  • jquery的show和hide
  • 如何用python创建数据集
  • android下的单元测试要配置以下说法不正确的是
  • jq中attr用法
  • 税务异地协查系统管理办法
  • 四川税务网上报税
  • 广东省电子税务局app
  • 晋中税务局领导班子简历
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设