`
citi21558541
  • 浏览: 81823 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论
  • ghostAngell: 我也是同时用得JQuery+新版得Json,我没发现过这个问题 ...
    JSON.js

javascript继承父类属性数组问题

阅读更多

extend-array.png 扩展名改为htm即可

 

注:父类属性是对象时可采用深度克隆的方式

 

 <html>
  <body>
  <script>
      function A(){
          this.list = [1,2,3];
          this.elem = {a:1,b:2};
      }
      function B(){
          this.list = new Array(B.prototype.list);
          this.elem = new Object(B.prototype.elem);
      }
      B.prototype=new A();
      B.constructor=B;
     
      var a1 = new B();
      var a2 = new B();
     
      a1.list.push(123);
      a1.elem.a=3;
      alert(a2.list);
      alert(a1.list);
      alert(a2.elem.a);
      alert(a1.elem.a);
     
     
  </script>
  </body>
</html>

  • 大小: 494 Bytes
分享到:
评论

相关推荐

    java中的继承(子类调用父类构造方法还不懂).doc

    在 Java 中,使用 `extends` 关键字可以实现继承关系,子类可以继承父类的属性和方法,并可以重写父类的方法。使用 `super` 关键字可以引用父类的成分,访问父类中定义的属性和方法。 在 Java 中,可以使用多态性来...

    JavaScript对象与数组参考大全

    // 继承并调用父类方法 ``` ### JavaScript数组 #### 1. 数组的定义 数组是有序的数据集合,可以通过索引来访问。创建数组有两种方式:字面量语法和Array构造函数。 **字面量语法**: ```javascript let arr = ...

    javascript 继承派生

    在继承和派生的上下文中,`apply`和`call`常用于父类的构造函数,以确保子类实例也能继承父类的初始化逻辑。例如: ```javascript function Parent(name) { this.name = name; } function Child(name, age) { ...

    javascript的prototype继承

    JavaScript的原型继承是其面向对象编程的一大特性,它基于原型链机制实现,允许一个对象可以从另一个对象继承属性和方法。这种继承方式不同于类继承,而是通过将子类的原型对象设置为父类的一个实例来实现。 在...

    javascript关于继承解析_.docx

    组合继承是JavaScript中最常用的继承模式,它结合了构造函数继承和原型链继承,但同时也存在两次调用父类构造函数的问题,导致了不必要的属性复制。为解决这个问题,我们使用寄生组合式继承: ```javascript ...

    javascript继承基础

    ### JavaScript继承基础 在面向对象(OO)编程领域中,封装、继承与多态被认为是三大核心特性。尽管JavaScript并非一种纯粹的面向对象语言,但其确实支持这些特性,并且能够实现对象之间的继承关系。本文将重点介绍...

    面向对象javascript

    * 继承:允许子类继承父类的属性和方法,从而实现代码重用和简化开发。 * 多态:允许对象在运行时改变其形态,以适应不同的情况。 * 封装:将对象的属性和方法封装在一起,隐藏实现细节,提高代码安全性和可维护性。...

    javascript 继承实现方法

    通过冒充,可以调用父类的构造函数,使子类能够继承父类的方法和属性。 原型链(Prototype Chain): 原型链是JavaScript继承的核心概念。每个对象都有一个指向其原型对象的内部链接,当我们试图访问一个对象的属性...

    JavaScript核心指南

    子类和继承在基于类的语言中,通过定义子类继承父类的属性和方法来构建类的层次结构。JavaScript则通过设置构造函数的原型对象来实现继承。例如,Manager构造函数可以将Employee对象作为其原型,这样Manager的实例...

    JavaScript 继承使用分析

    JavaScript 继承是一种重要的编程概念,它允许子类(派生类)继承父类(超类、基类)的属性和方法,实现代码的复用和模块化。在JavaScript中,由于其动态类型和基于原型的特性,继承的实现方式有多种。 首先,我们...

    js遍历属性 以及 js prototype 和继承

    在JavaScript中,遍历属性、理解`prototype`和掌握继承机制是编程中不可或缺的基本技能。本文将深入探讨这些概念,并通过实例来加深理解。 首先,让我们来看如何遍历JavaScript对象的属性。JavaScript提供了多种...

    浅析2种JavaScript继承方式

    例如,寄生组合式继承就是目前最为推崇的一种继承方式,它通过借用构造函数继承父类的属性,并使用原型链继承父类的方法,同时避免了重复调用父类构造函数的问题。 继承是JavaScript编程中不可或缺的一部分,不同...

    javascript高级程序设计实例代码

    实例代码可能展示了如何创建子类并继承父类的属性和方法。 2. **闭包**:闭包是一种特殊的作用域,它可以访问其定义时的作用域,即使在其外部调用。这在模块化、数据封装和内存管理等方面非常有用。例子可能展示了...

    利用javascript中的call实现继承

    // 继承父类属性 this.age = age; } Child.prototype = Object.create(Parent.prototype); // 继承父类方法 Child.prototype.constructor = Child; var child = new Child('Alice', 25); child.sayHello(); // ...

    js的原型继承

    虽然组合继承解决了大部分继承问题,但存在一个问题:子类会继承父类的构造函数引用,造成不必要的内存消耗。寄生组合继承通过复制父类的原型到子类的原型,避免了这个问题。 ```javascript function ...

    .Principles.of.Object-Oriented.Programming.in.JavaScript

    - **构造函数继承**:学习如何使用构造函数继承父类的属性和方法。 - **构造函数劫持**:解释如何通过构造函数劫持来扩展已有对象。 - **访问超类方法**:探讨如何在派生类中调用基类的方法。 #### 第六章:对象...

    javascript学习笔记.docx

    - **继承**:通过原型链实现,写入属性时会在当前对象创建同名属性,覆盖父类属性。 3. **数组操作**: - **创建数组**:使用`new Array()`,可以提供参数初始化元素,数组元素可为任意类型,length属性可读写,...

    Object_Oriented_Javascript

    JavaScript通过原型链实现继承,这是一种动态继承机制。 - **多态**:指子类可以重写父类的方法,实现不同的行为。JavaScript中的多态通常通过重写方法或使用构造函数实现。 - **抽象**:通过接口或者抽象类定义通用...

    《精通JavaScript》

    子类可以通过将父类的实例设置为其原型来继承父类的属性和方法。 #### 五、异步编程与模块化 1. **异步编程**:JavaScript是单线程的,为了不阻塞主线程,通常采用回调函数、Promise、async/await等方式来处理异步...

    javaScript语句大全2015

    `prototype`和`__proto__`属性用于实现继承,`super`关键字用于调用父类的方法。 错误处理是程序设计的重要环节。在JavaScript中,我们可以使用`try...catch`语句捕获和处理异常。`throw`语句用于抛出自定义错误。 ...

Global site tag (gtag.js) - Google Analytics