第一种:
function two(value) {
if (!value) {
return 1;
} else {
return 1+ value;
}
}
function add(value) {
if (!value) {
return 1;
} else {
return 1+ value;
}
}
function one(value) {
if (!value) {
return 1;
} else {
return 1+ value;
}
}
也是一种实现办法,但肯定不是最优的解决办法。
第二种
function one(fn) {
let obj = {
value: 1
}
if (fun) {
return fn.apply(obj)
} else {
return obj.value
}
}
function two(fun) {
let obj = {
value: 2
}
if (fun) {
return fun.apply(obj)
} else {
return obj.value
}
}
function add(num) {
return function () {
return this.value + num
}
}