位置: 编程技术 - 正文

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

  • 国有独资企业是国企吗
  • 融资租赁租出的固定资产需要计提折旧吗
  • 房产预收款怎么记帐?
  • 原材料入库是付款凭证吗
  • 转账支票需要哪些资料
  • 收到科技创新奖金怎么做分录
  • 没有资质的建筑公司怎样接工程
  • 一般纳税人开6个点的票内容
  • 什么是遗产税什么是税
  • 税务稽查补缴的税款需要申报吗
  • 公司前三季度实现营业收入59.17亿元
  • 支付车辆保险费及车船税会计科目
  • 应付职工薪酬计入现金流量表哪里
  • 委托出口货物怎么办理退免税?
  • 汽车维修发票是几个点
  • 金蝶怎么打开以前的年度账
  • 独立核算的分公司可以享受小微企业吗
  • 我想看一下这个月几日
  • 股权转让会计处理
  • windows 10如何清除联网记录
  • windows安装程序无法配置在硬件上
  • linux CentOS/redhat 6.5 LVM分区使用详解
  • 个税退手续费怎么申请
  • 设计费要计入固定费用吗
  • 劳务费个税扣税
  • 王者荣耀中马可波罗的一技能和大招
  • 微软输入法繁体字变简体字
  • 修改远程桌面端口脚本
  • mcappins.exe - mcappins进程是什么文件 什么意思.
  • flash是什么文件
  • 纳税人转让不动产增值税征收管理暂行办
  • php cgi
  • 金融机构通过
  • 增值税怎样计算
  • 命令行基础
  • 个人股权转让应税凭证名称
  • 企业清算期间会计分录
  • vue中elementui怎么用
  • 从零开始文章
  • 如何搭建python
  • node深入浅出pdf
  • 你应该知道的数学常识纪录片
  • react避免子组件更新
  • 零申报的申报表怎么填
  • python的series
  • php实现站内消息推送
  • 织梦配置文件
  • mongodb管理工具
  • 浏览器测试网页
  • mysql的左右连接
  • 企业销售收入确认条件
  • 银行汇票转入银行分录
  • 劳务费收入交印花税吗
  • 工程项目预缴税率
  • 根据企业会计准则第11号规定,下列关于等待期
  • 销售费用明细科目里有什么
  • mysql如何输入数据
  • mysql error1418
  • 通过注册表设置u盘启动
  • 英伟达更新有用吗
  • solaris 创建文件
  • win7设置在哪里设置
  • ubuntu安装指南
  • xp系统无线网络连接怎么没有
  • linux流量控制
  • 同步数据和异步数据的区别
  • 仿客齐集首页导航条DIV+CSS+JS [代码实例]
  • 使用ssh登录远程服务器有两种方法
  • unity中assets文件夹的作用
  • javascript运用
  • 静态类 java
  • python 字典的字典
  • android,ios,apicloud 同时开发两个平台应用,方便简单一体化,自带svn,云编译,中文IDE
  • python中的get方法
  • 济南个税起征点是多少2021
  • 税控专用设备包括哪些
  • 江苏国税电子税务局官网
  • 城镇土地使用税税率
  • 苹果关税多少钱一个
  • 资源税的征税对象和纳税环节
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设