美文网首页
面向对象的一些方法

面向对象的一些方法

作者: Yokiijay | 来源:发表于2019-04-26 17:06 被阅读0次

prototype和_proto_

原型和原型链

function A(){
}
A.prototype.msg = 'I am A'
const a = new A()
  • 每次new A()都会实例化一个新的A对象, prototype里的值也会被实例化,不同的实例的值相互不影响
  • A.prototype.msg 可以获取也可以设置原型属性
  • a._proto_.msg 可以让实例引用拿到实例对象的prototype里的msg属性值

instanceof

判断是否是某某的实例

function A(){}

const a = new A()
console.log( a instanceof A ) // => ture

in

判断属性有没有在对象或对象原型身上

function A(){
  this.name = 'yokiijay'
}
A.prototype.age = 21

const a = new ()

console.log( 'name' in a ) // true
console.log('age' in a) // true

hasOwnProperty

只判断对象身上有么有属性 (排除原型)

function A(){
  this.name = 'yokiijay'
}
A.prototype.age = 21

const a = new ()

console.log( a.hasOwnProperty('name') ) // true
console.log( a.hasOwnProperty('age') ) // false

isPrototypeOf

判断一个对象是否存在于另一个对象的原型链上

function A(){}

function B(){}
B.prototype = new A()

function C(){}
C.prototype = new B()

const c = new C()

console.log( A.prototype.isPrototypeOf(c) ) // true

相关文章

  • 面向对象

    面向对象方法概论 对象、结构 概念呢 特征 1.1 什么是面向对象 面向对象方法的基本思想 对象 属性-静态特征 ...

  • javaScript面向对象

    面向对象的理解: 面向对象可以把程序中的关键模块视为对象,而模块拥有属性和方法。这样我们一些属性和方法封装起来,日...

  • JS高级

    1.面向对象的概念 1.1什么是面向对象: 1 .面向对象是一种思维方法2.面向对象是一种编程方法3.面向对象并不...

  • 面向对象与构造函数

    面向对象是一种思维方法 面向对象是一种编程方法 面向对象并不只针对某一种编程语言 什么是面向对象? 面向对...

  • 面向对象的一些方法

    prototype和_proto_ 原型和原型链 每次new A()都会实例化一个新的A对象, prototype...

  • C#之面向对象基础篇

    面向对象编程:简称OOP 面试题:什么是面向对象? 答:封装,继承,多态即为面向对象 面相对象的方法: 面向对象的...

  • 面向对象分析与设计的底层逻辑

    面向对象是符合人认识事物的基本方法 人是怎么认识事物的 在面向对象出现之前,已有面向过程的分析方法,为什么面向对象...

  • js原型链基础

    创建对象的方法: 面向对象

  • python 10天快速教程 Day7

    本节重点 面向对象介绍 简单类与对象 魔法方法 继承、super 私有属性与私有方法 一、面向对象介绍 面向过程:...

  • OC类结构分析

    OC是一门面向对象语言,面向对象离不开对象,类,继承,类方法,实例方法,属性,实例变量,对于习惯了面向对象的同学来...

网友评论

      本文标题:面向对象的一些方法

      本文链接:https://www.haomeiwen.com/subject/fczxnqtx.html