javascript - 箭头函数期望返回值
问题描述
我该如何解决这个警告?我使用 .map 的方式有问题吗?
我正在尝试显示通过包含该信息的另一个数组接收到的每个月的总销售额和总收入,以便稍后在图表上显示。
var arrEneSales = [0, 0, 0, 0, 0, 0];
var arrJulSales = [0, 0, 0, 0, 0, 0];
var arrMoneyEne = [0, 0, 0, 0, 0, 0];
var arrMoneyJul = [0, 0, 0, 0, 0, 0];
this.state.sales.map((item) => {
var date = new Date(item[0].q1_date.seconds * 1000);
if (date.getMonth() + 1 < 6) {
arrEneSales[date.getMonth() + 1] += 1;
arrMoneyEne[date.getMonth() + 1] += item[0].total;
} else {
arrJulSales[date.getMonth() + 1] += 1;
arrMoneyJul[date.getMonth() + 1] += item[0].total;
}
});
解决方案
Map
用于返回数组。如果您不想返回任何内容,只需遍历数组,请不要像这样使用map
use forEach
。
this.state.sales.forEach((item) => {
var date = new Date(item[0].q1_date.seconds * 1000);
if (date.getMonth() + 1 < 6) {
arrEneSales[date.getMonth() + 1] += 1;
arrMoneyEne[date.getMonth() + 1] += item[0].total;
} else {
arrJulSales[date.getMonth() + 1] += 1;
arrMoneyJul[date.getMonth() + 1] += item[0].total;
}
});
地图工作是这样的。
var returnedArray = this.state.sales.map((item) => {
var date = new Date(item[0].q1_date.seconds * 1000);
if (date.getMonth() + 1 < 6) {
arrEneSales[date.getMonth() + 1] += 1;
arrMoneyEne[date.getMonth() + 1] += item[0].total;
} else {
arrJulSales[date.getMonth() + 1] += 1;
arrMoneyJul[date.getMonth() + 1] += item[0].total;
}
return item;
});
推荐阅读
- arrays - 将fileupload formdata转换为base64时的部分字符串
- c++ - 推力::inner_product 与推力::transform_reduce 寻找向量范数
- excel - 如何抑制由 EPM 加载项触发的 .NET 错误消息
- python - 如何创建相关字段?
- python - Rolling subtraction in pandas
- python - Building a multi-index db
- python - 在循环中执行python异步
- python - In Python: How to use the index number in an if-statement that is nested in a for-loop?
- android - How to translate animation from top?
- image - How to use another library in the tensorflow graph?