Javascript 循环内部的JS函数-内存/CPU注意事项

Javascript 循环内部的JS函数-内存/CPU注意事项,javascript,function,closures,Javascript,Function,Closures,有人能告诉我这对CPU或内存有什么影响吗 Object.keys(app.crypto).forEach(symbol => { txRec(0, symbol, tx_recs) function txRec(tx_index, symbol, tx_recs) { ... } }) vs 我当然选择后者,因为它对我来说更自然。在第一种情况下,函数似乎正在循环中重新声明。有人对此有任何煽动吗?只是好奇

有人能告诉我这对CPU或内存有什么影响吗

    Object.keys(app.crypto).forEach(symbol => {
        txRec(0, symbol, tx_recs)
        function txRec(tx_index, symbol, tx_recs) {
           ...
        }
    })
vs

我当然选择后者,因为它对我来说更自然。在第一种情况下,函数似乎正在循环中重新声明。有人对此有任何煽动吗?只是好奇

似乎函数正在循环中重新声明


不,这可能会造成一个结束,但在你的情况下,这是不可能的。在一个好的js引擎中,差异得到了优化,两者完全相同。

为什么要声明一个函数,而不是将
代码直接放在
forEach
回调中?显然,
txRec
在别处没有被调用。@Bergi-Callback-hell,它通过不在编辑器主体中缩进太远来保持代码的整洁。我没有在这里发布txRec的完整代码,请注意“…”,因此在我提供的示例中很难看到这一点。txRec也是一个递归函数。这正是我所想的,谢谢你的回复!
    Object.keys(app.crypto).forEach(symbol => {
        txRec(0, symbol, tx_recs)
    })
    function txRec(tx_index, symbol, tx_recs) {
      ...
    }