javascript - 我如何使用原型(prototype)?

标签 javascript prototype

我正在尝试学习如何在 javascript 中使用原型(prototype),我希望有人可以向我解释以下内容。

假设我有一个具有如下原型(prototype)的对象:

function Calc(sumOne, sumTwo) {
    this.sumOne = sumOne;
    this.sumTwo = sumTwo;
}

Calc.prototype.add = function() {
    var sum = this.sumOne + this.sumTwo;
    return sum;
}

然后假设这些对象在像这样创建时存储在数组中。

var numbers = [];

numbers.push(new Calc(1, 2));
numbers.push(new Calc(3, 4));
numbers.push(new Calc(5, 6));

这会导致数组看起来像这样

numbers = [{sumOne: 1, sumTwo: 2}, {sumOne: 3, sumTwo: 4}, {sumOne: 5, sumTwo: 6}];

如果我现在想在这些对象上运行原型(prototype)以获得结果(3、7 和 11)。我该怎么做?

最佳答案

对于数组中的每个 Calc 实例,对其调用 .add()

numbers.map(function(calc) {
  return calc.add();
});

关于javascript - 我如何使用原型(prototype)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33245382/

相关文章:

javascript - 实时 JavaScript 编辑和编译 - Firefox 开发者版

php - ajax json解码mysql获取数组

javascript - 原型(prototype)和 document.getElementById()

javascript - 如何扩展 Javascript 原型(prototype)?

javascript - 等待 Promise Value 的行为

javascript - 找不到超时错误的 mongodb Node 游标

javascript - 如果在几秒后单击正文,如何触发 javascript 函数?

javascript - javascript中从一个实例继承

javascript - Array.prototype.sort.apply( someArray, args ) 与 someArray.sort.apply( someArray, args )

javascript - 使用 Object.defineProperties 定义属性