根据1,当我们调用increment方法时。 a随函数的给定参数增加,如果没有传递参数,那么它是1。
但根据2,当我写下面的代码时,a不是inc,总是只有1。为什么?? ....请解决这个问题....
// 1
var Obj1 = {
a: 0,
increment: function(inc) {
this.a += typeof inc === 'number' ? inc : 1;
}
};
// 2
var Obj1 = {
a: 0,
increment: function(inc) {
this.value = this.a + typeof inc === 'number' ? inc : 1;
}
};
答案 0 :(得分:1)
当我编写如下代码时,a不是inc,只是1。为什么?
因为您从未向a
成功
var Obj1 = {
a: 0,
increment: function (inc) {
this.a = this.value = this.a + typeof inc === 'number' ? inc : 1;
}
};
或
var Obj1 = {
a: 0,
increment: function (inc) {
this.value = this.a + typeof inc === 'number' ? inc : 1;
this.a = this.value;
}
};
答案 1 :(得分:0)
我不知道为什么你需要价值但是
var Obj1 = {
a: 0,
increment: function (inc) {
this.a = this.a + typeof inc === 'number' ? inc : 1;
}
};