Я пытаюсь создать список выбора html с 10 000 опциями. Из-за числа мне нужно, чтобы он был настолько эффективным, насколько это возможно. Я получил это работает, но я думаю, что это довольно неэффективныйJavaScript - Есть ли более эффективный способ создания элементов элементов?
var select = document.createElement("select");
document.body.appendChild(select);
for (var i = 1; i <= 10000; i++) {
var option = document.createElement("option");
var optionText = option.createTextNode("option" + i);
option.value = "option" + i;
option.appendChild(optionText);
select.appendChild(option);
}
Я читал, что запрашивая DOM слишком много может быть дорогим. Есть ли более простой способ сделать это?
дорогостоящая вещь многократно чтение из DOM с последующим изменением DOM. Просто изменение DOM само по себе не так дорого. Однако со стороны UX ваши пользователи будут * ненавидеть * вас, если вы дадите им выбор из 10000 элементов. С * страстью *. В ваших ботинках я бы постарался * очень * придумать альтернативное решение для пользовательского интерфейса. – Amadan
Обратите внимание, что было бы лучше добавить 'select' в конце, как только у него будет все' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' ' – Oriol