Object.keys forEach 返回 undefined。

5
我有以下函数,它以一个对象作为参数,并使用它来操作该对象。
function manipulateData(obj){
    var data = Object.keys(obj).forEach(function(index){
         //Perform the manipulation 
         return obj;
    }

    return data;
}

我在另一个回调函数中调用上述函数,如下所示:
converter.on('done', function(jsonArray){
    var newObj = manipulateData(jsonArray);
});

在调试过程中,我注意到forEach返回的值是“undefined”,我该如何使数据按预期返回?


取决于您期望返回什么。 - Jaromanda X
2个回答

7

forEach 不返回任何内容。如果您想通过转换现有的数组来创建一个新的 Array,请使用map


1
也许可以使用 .map(),因为它会返回一个新的数组?
function manipulateData(obj){
    var data = Object.keys(obj).map(function(index){
         //Perform the manipulation 
         return obj;
    }

    return data;
}

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接