对Javascript来说还很新。
我已经在此处编写了以下简单代码的脚本:
var currentstock = 50;
function stockminus(x){
newcurrent = currentstock - x;
return newcurrent;
};
console.log(stockminus(10));
此输出必须是:40
如何将新输出作为新值存储到currentstock
中,或者换句话说,覆盖该var?
因此,下次我再次调用该函数时,输出应为:30
因为新的当前库存是上一次调用的40
答案 0 :(得分:2)
简单 func verifyIsObjectOfAnArray<T>(_ object: T) -> Bool {
if let _ = object as? [T] {
return true
}
return false
} .
答案 1 :(得分:2)
let语句声明一个块范围局部变量,可以选择将其初始化为一个值。
因此,每次在同一范围内工作时,您都可以这样做:
let currentstock = 50;
function stockminus(x) {
return currentstock -= x;
};
console.log(stockminus(10));
console.log(stockminus(10));
答案 2 :(得分:0)
var stockDetails = (function(initialValue){
var currentStock = initialValue;
return {
getCurrentStock: function() {
return currentStock;
},
stockminus: function(x) {
//add additional logic to check negative cases
currentStock-= x;
return currentStock;
}
}
})(50);
您可以使用这种类型的模块化模式来使用方法访问数据,然后根据需要对其进行扩展。
访问方式
stockDetails.getCurrentStock();
stockDetails.stockminus(10);