原型链继承和构造函数继承
//原型链继承function Father(name,age){//构造器this.name=name;this.age=age;this.say=function(){console.log(this.name)}}Father.prototype.walk=function(){//在对象原型对象上设置的方法console.log(this.age)}function Son(){this.jump=function(){console.log(this)}}Son.prototype=new Father()//此处为原型链继承,继承的是Father实例上的属性var son1=new Son("zhangsan",18)//以下两行代码可以验证son._proto_=Son.prototypeconsole.log(son1.__proto__)//{walk: ƒ, constructor: ƒ}console.log(Son.prototype)//{walk: ƒ, constructor: ƒ}console.log(Son.prototype.hasOwnProperty("age"))//trueconsole.log(Son.hasOwnProperty("age"))//falseconsole.log(Son.prototype.hasOwnProperty("walk"))console.log(Father.hasOwnProperty("walk"))console.log(Father.prototype.hasOwnProperty("walk"))console.log(Father.prototype)//{walk: ƒ, constructor: ƒ}//构造器继承function Father(name,age){//构造器this.name=name;this.age=age;this.say=function(){console.log(this.name)}}Father.prototype.walk=function(){//是在Farher原型对象上的方法console.log(this.age)}function Son(sex){//构造器继承 继承原型属性Father.call(this);this.sex=sex;}var son1=new Son()console.log(Son.prototype)console.log(Son.hasOwnProperty("age"))//false 实际上是在未来的将要创建的Son的实例的环境下面调用了Father构造函数console.log(son1.hasOwnProperty("age"))//trueconsole.log(son1.hasOwnProperty("walk"))//falseconsole.log(Son.hasOwnProperty("walk"))//false
原型链继承和构造函数继承相关推荐
- JavaScript中实现继承的方法(深入学习原型链、盗用构造函数、组合继承、原型式继承、寄生式继承、寄生式组合继承)
一.原型链 原型链的基本思想就是通过原型继承多个引用类型的属性和方法. 构造函数.原型和实例的关系:每个构造函数都有一个原型对象,原型有一个属性指回构造函数,而实例有一个内部指针指向原型. 若原型是另 ...
- JS中对象的四种继承方式:class继承、原型链继承、构造函数继承、组合继承(构造函数和原型链继承的结合)
前言 才发现之前没有对JavaScript中的继承做过总结,不过看得到是不少,接下来就对这几种继承方式做一下总结. class继承 class继承是ES6引入的标准的继承方式. ES6引入了class ...
- 记录--JS精粹,原型链继承和构造函数继承的 “毛病”
这里给大家分享我在网上总结出来的一些知识,希望对大家有所帮助 先从面向对象讲起,本瓜认为:面向对象编程,它的最大能力就是:复用! 咱常说,面向对象三大特点,封装.继承.多态. 这三个特点,以" ...
- 初学JavaScript:原型继承/盗用构造函数继承/组合继承/寄生式继承/原型式继承/寄生组合式继承
文章目录 继承 简介 1.原型链继承 默认原型 判断原型与实例间是否为继承关系 原型继承中的方法 原型链的破坏 原型继承的问题 2.盗用构造函数继承 简介 盗用构造函数继承的问题 3.组合继承 简介 ...
- 【javascript】简单原型链、借用构造函数
javascript中继承(实现继承)的方式--简单原型链 1 .简单原型链事例 function Super() { }; Super.prototype = { ...
- 【JS继承】JS继承之构造函数继承
自我介绍:大家好,我是吉帅振的网络日志:微信公众号:吉帅振的网络日志:前端开发工程师,工作4年,去过上海.北京,经历创业公司,进过大厂,现在郑州敲代码. JS继承专栏 1[JS继承]什么是JS继承? ...
- 深入浅析js原型链和vue构造函数
一.什么是原型链? 简单回顾下构造函数,原型和实例的关系: 每个构造函数(constructor)都有一个原型对象(prototype),原型对象都包含一个指向构造函数的指针,而实例(instance ...
- ES5-11原型与原型链深入、对象继承
原型 谁调用,this就指向谁,当实例对象有该属性时,不会去原型上查找 创建对象的两种方法:字面量.new Object()一般不用后面的 二者创建出来的对象没有差异 Object.create() ...
- javascript中实例对象和构造函数关系、原型语法、原型链、call实现继承、apply调用函数、bind拷贝函数、拷贝继承、class类、super、严格模式、高阶函数、闭包、递归、es6简介
实例对象和构造函数的关系及原型: 实例对象是通过构造函数创建出来的,实例对象的构造器constructor就是指向构造函数的:每个实例对象中的同一方法的指向是各不相同的,但是其属性值相同的属性可以相同 ...
最新文章
- 一个ASP.NET中使用的MessageBox类
- noclobber属性
- /proc/sys/net/ipv4 详解2
- 【Flink】Flink source后全过滤数据导致监控数据为0
- Nginx设置上传文件大小限制
- Windows10 中在指定目录下启动Powershell
- 在 Lotus Domino 7 应用程序中利用 IBM DB2 集成特性
- 454.四数相加II
- C语言判断一个数是否为素数
- Big5和Gb编码转换
- cad2012打开后闪退_【电脑安装好cad一打开闪退】cad安装完打开闪退_cad2012打开闪退...
- 慢就是快的人生哲理_关于慢的境界的哲理美文
- 【软件工程】软件工程中应用的几种图辨析:系统流程图、数据流图、数据字典、实体联系图、状态转换图、层次方框图、Warnier图、IPO图、层次图、HIPO图、结构图、程序流程图、盒图、PAD图、判定表
- android OS 耗电量大,安卓os耗电高怎么解决
- 保存在线阅读文件到本地的方法
- UE4像素流pixelstream的一些坑
- 爱上c++的第六天(核心课程):继承和多态
- 网络安全应急响应----10、内存分析
- 国产arm服务器性能,国产服务器OS重磅升级:适配国产ARM/x86 性能提升20%
- C语言snprintf()函数用法