美文网首页
js面向对象

js面向对象

作者: luckyQAQ | 来源:发表于2018-07-15 17:18 被阅读0次

1.对象的定义

工厂模式:

问题:没有解决对象识别的问题(即怎样知道一个对象的类型)。

构造函数模式

特点:出现了this关键词,常见对象时需要new,创建自定义的构造函数意味着将来可以将它的实例标识为一种特定的类型

缺点:如果对象中定义了一个方法,那么每次new对象时都要执行

(1) 创建一个新对象;

 (2) 将构造函数的作用域赋给新对象(因此 this 就指向了这个新对象);

 (3) 执行构造函数中的代码(为这个新对象添加属性);

 (4) 返回新对象。

原型模式

每创建一 个函数,就会同时创建它的 prototype 对象,这个对象也会自动获得 constructor 属性

而现在,我们要修改Person的prototype属性,比如下面的代码

原型链被切断了

上面的操作不可行,但是直接在原型链上添加一个方法是不会切断的

解决办法,

构造函数和原型模式结合

我们创建的每个函数都有一个 prototype(原型)属性,这个属性是一个指针,指向一个对象, 而这个对象的用途是包含可以由特定类型的所有实例共享的属性和方法。如果按照字面意思来理解,那 么 prototype 就是通过调用构造函数而创建的那个对象实例的原型对象。使用原型对象的好处是可以 让所有对象实例共享它所包含的属性和方法。换句话说,不必在构造函数中定义对象实例的信息,而是 可以将这些信息直接添加到原型对象

相关文章

  • JS面向对象精要(二)_函数

    JS面向对象精要(一)_原始类型和引用类型JS面向对象精要(二)_函数JS面向对象精要(三)_理解对象JS面向对象...

  • JS面向对象精要(三)_理解对象

    JS面向对象精要(一)_原始类型和引用类型JS面向对象精要(二)_函数JS面向对象精要(三)_理解对象JS面向对象...

  • JS面向对象精要(四)_构造函数和原型对象

    JS面向对象精要(一)_原始类型和引用类型JS面向对象精要(二)_函数JS面向对象精要(三)_理解对象JS面向对象...

  • JS面向对象精要(五)_继承

    JS面向对象精要(一)_原始类型和引用类型JS面向对象精要(二)_函数JS面向对象精要(三)_理解对象JS面向对象...

  • js 面向对象和面向过程

    js 面向对象和面向过程

  • 面向对象OOP--JS

    作者:烨竹 JS面向对象简介 JS名言:万物皆对象 JS面向对象比PHP简单很多;因为JS中没有class关键字,...

  • JavaScript笔记(一)

    一、面向对象面向过程的区别 1、什么是js对象 js对象:属性和方法的集合,js所有数据都可以看成对象...

  • JS面向对象

    JS面向对象入门 1、面向对象语言概念面向对象语言主要包括 类、对象、封装、多肽。2、面向对象的编程思想面向过程思...

  • 2018-01-18

    js中的面向对象核心 js是基于对象的编程语言,在后面的学习中我们通过一种模式使其转化成为面向对象的语言。js面向...

  • 浅谈JS中的面向对象

    浅谈JS中的面向对象 本文主要说说本人在JS中对面向对象的理解。 计算机编程语言主要分为面向过程式编程和面向对象式...

网友评论

      本文标题:js面向对象

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