javascript - 在嵌套函数中包含代码(大约 30 行)是更快还是在没有嵌套函数的情况下调用代码更快

标签 javascript performance

假设我有一段代码,例如

for (j = 0; j < 4; j++) {
    for (var i = 0; i < 4; i++) {
        str = pieceData[piece][rotation]
        char = str.substr(k, 1);

        if (char == 1) {
            c.fillStyle = pieceColours[piece]
            c.fillRect(x + (i * 20), y + (j * 20), 20, 20)
            c.fill()
        } else {
            c.fillStyle = 'green'
            if (x + (i * 20) > 180) {
                c.fillStyle = 'red'
            }
            c.fillRect(x + (i * 20), y + (j * 20), 20, 20)
            c.stroke()
        }
        k++
    }
}
k = 0

如果我在嵌套函数中调用它,它会变慢吗

function pieceGen() {

    for (j = 0; j < 4; j++) {
        for (var i = 0; i < 4; i++) {
            str = pieceData[piece][rotation]
            char = str.substr(k, 1);

            if (char == 1) {
                c.fillStyle = pieceColours[piece]
                c.fillRect(x + (i * 20), y + (j * 20), 20, 20)
                c.fill()
            } else {
                c.fillStyle = 'green'
                if (x + (i * 20) > 180) {
                    c.fillStyle = 'red'
                }
                c.fillRect(x + (i * 20), y + (j * 20), 20, 20)
                c.stroke()
            }
            k++
        }
    }
    k = 0
}
//________________________________________________________________________

function animate() {
    pieceGen()
    requestAnimationFrame(animate)
}

我需要考虑到这一点,因为我的笔记本电脑性能不佳,如果我使用越来越多的嵌套函数,它会变慢吗?

最佳答案

函数调用在 javascript 中的开销非常小,可以自由使用它们,因为它们可以使您的代码更清晰

关于javascript - 在嵌套函数中包含代码(大约 30 行)是更快还是在没有嵌套函数的情况下调用代码更快,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54840426/

相关文章:

javascript - 事件真正走向并形成哪些对象?

javascript - 使用 javascript 加载 XUL 资源

javascript - 着色从 0 开始但不缩放

这可以更快地完成吗,寻找可以告诉我如何更快地完成的人

javascript - 通过函数名称查找表调用 javascript 函数(或方法)的最快方法?

javascript - 在 JavaScript 中排序 : Should every compare function have a "return 0" statement?

javascript - 使用grunt将jade模板编译为sails.js中的javascript函数

C++时间序列库(分析处理)

mysql - 维护专门的日志表或计算每个 sql 的条目数是更好的做法吗

excel - 计算机因简单代码而窒息。我错过了什么?