我正在根据另一个数组中的项目数量生成一个对象数组。非常简单,我只是执行以下操作,效果很好。
for(let i in myArray){
newArray.push({
var1: someFunctionValue(),
var2: anotherFunctionValue()
});
}
但是,因为没有使用“i”,React(ESLint?)给我警告“i”被分配了一个值但从未使用过 - no-unused-vars。
我应该有更好的方法吗?我真的看不出有什么方法可以在不产生此错误的情况下实现我想要的结果。
最佳答案
您在数组上使用 for-in 循环,而不使用可枚举键(索引)。您应该改用 Array#forEach
,因为它接受回调,您可以省略任何参数:
myArray.forEach(() => { // No callback args
newArray.push({
var1: someFunctionValue(),
var2: anotherFunctionValue()
});
});
此外,既然我正在读取您的变量名,您似乎正在尝试进行映射操作,就像对于 myArray
中的每个元素一样,您想要一个新的 newArray
与每个索引关联。如果是这样,更好的方法是 Array#map
您的 myArray
:
const newArray = myArray.map(() => ({
var1: someFunctionValue(),
var2: anotherFunctionValue(),
}));
无需任何中介,简洁明了。
关于javascript - 使用循环避免 React "no-unused-vars"错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51468477/