.map() 中的 .find 返回 undefined - JavaScript ES6

Cod*_*ker 1 javascript ecmascript-6 array.prototype.map

return valuesArray.map((objValue) => {
         Dataset.find(dataObj => dataObj.value === objValue)
});
Run Code Online (Sandbox Code Playgroud)

它返回未定义。但是,如果我使用 forEach 并将值推送到一个新数组中,它就可以工作。

Pra*_*mar 6

您也可以检查filter以检查undefined.

return valuesArray.map((objValue) => {
        return Dataset.find(dataObj => dataObj.value === objValue)
}).filter(y => y != undefined);
Run Code Online (Sandbox Code Playgroud)

所以它不会undefinedvaluesArray也返回。