【发布时间】:2020-09-14 15:55:21
【问题描述】:
我从包含数组arrCombined 的函数传递一个对象。我有一个名为results 的对象,我想将其映射并删除字符串,以便将这些字符串转换为整数。在为results映射我的对象数组时,我陷入了未定义的问题。
这是我的数组:
[..]
0: Object { result: "494,927", risk: "LOW", sector: "Online" }
1: Object { result: "48,883", risk: "MEDIUM-LOW", sector: "Retail Stores" }
2: Object { result: "59,976", risk: "MEDIUM-LOW", sector: "Store Pick up" }
3: Object { result: "1,205,915", risk: "MEDIUM", sector: "Drive in" }
4: Object { result: "1,434,262", risk: "LOW", sector: "In store" }
我声明了一个变量finalResult 以在我的映射函数中返回目标“结果”,如下所示。
let finalResult = arrCombined.arrCombined.result.map(function (e) {
return Number(e.replace(/(,\s*)+/g, '').trim());
});
console.log(finalResult) // undefined.
我期望 finalResult 将结果对象作为数字返回,即 494927, 48883, 59976, 1205915, 1434262
【问题讨论】:
-
改成
arrCombined.map(function(e)和e.result.replace -
但是,该代码应该抛出:
Uncaught TypeError: e.replace is not a function
标签: javascript arrays mapping