我似乎不能在我的对象中为我的函数添加参数。我的对象需要从我的函数接收外部信息,但它告诉我参数是未定义的。
这是对象
const data = {
labels: GenerateAllQuantities(QuantityPerOrder)
}
函数为:
function GenerateAllQuantities(QuantityPerOrder) {
var TotalQuantityPerAmmount = [QuantityPerOrder];
var AmmountsOfOrder = QuantityPerOrder / 8;
for(var i = 1; i < 8; i++) {
let OrderQuantity = TotalQuantityPerAmmount[0] - AmmountsOfOrder;
TotalQuantityPerAmmount.unshift(OrderQuantity)
}
return TotalQuantityPerAmmount;
}
当我直接写:
const data = {
labels: GenerateAllQuantities(80)
我直接得到了答案,问题是参数。
不妨试试:
const data = {
labels: GenerateAllQuantities
}
然后,当您想要使用它时(在本例中,参数为60),您将通过执行以下操作来调用该函数:
let myFunctionReturn = data.labels(60)
如果你总是希望你的参数是80,那么让你的对象的labels
键指向一个被调用的函数,80被一个未被调用的匿名指针函数包装:
const data = {
labels: () => GenerateAllQuantitiest(80)
}
这将确保当您的标签函数运行时,它以参数80
运行。
运行"always 80"函数的版本,执行以下操作:
let myFunctionReturn = data.labels()
在你的代码中当你有
const data = {
labels: GenerateAllQuantitiest(80)
}
函数立即运行,然后data.labels
不再是一个函数,而是变成了你的函数的返回值。