我有原型exp(40) + 1e-18 > exp(40) % Returns false, i.e. not enough accuracy for additional term
eps(exp(40)) % Gives smallest distance to next number, returns 32.
% This is many orders of magnitude larger than 10^-18!
,x
和y
。我想基于{{1}的成员初始化原型z
中的实例n
,其类型为i
,x
或y
}。可以这样做吗?
出于说明目的
z
答案 0 :(得分:0)
您的代码确实有效,因为我修复了一些语法错误:
Z.prototype.add(v) {
变为Z.prototype.add = function(v) {
。
this.value * v
本身没有做任何事情,我认为你想要的
要更改值字段,我将其更改为:this.value *=v
。
this
之前忘记了fields
(forEach
和
push
)。
function Z(value) {
this.value = value;
}
Z.prototype.add = function(v) {
this.value *= v;
}
function I(field) {
this.field = field;
this.fields = [];
}
I.prototype.createField = function(value) {
this.fields.push(new this.field(value));
}
I.prototype.sumOfField = function() {
var res = 2;
this.fields.forEach(function(element) {
element.add(res);
});
}
var temp = new I(Z);
for (var i = 1; i <= 5; i++) {
temp.createField(i);
}
temp.sumOfField();
console.log(temp.fields);