Javascript设置的许多元素的值都很慢



我有一个改变输入值的循环,但我找不到任何优化的解决方案,因为循环需要5秒以上的时间。

我的循环看起来像这样:

for(let i = 0; i < 50; i++)
{
const element = document.getElementById(`txt-assembly-${i}`);
element.value = "40";
}

不,在50个元素上设置value并不慢,它几乎是即时的。您的性能问题一定在别处。请尝试查看chrome中的开发控制台性能选项卡。

for (let i = 0; i < 50; i++)
document.querySelector('div').appendChild(document.createElement('input'));
let reset = val => [...document.querySelectorAll('input')]
.forEach(el => el.value = val);

reset(40);

document.querySelector('button').addEventListener('click', () => reset(Math.random() * 100));
<button>random</button>
<div></div>

最新更新