假设我有一段代码,例如
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/