Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #21 (permalink)  
Старый 10.08.2016, 12:12
Интересующийся
Отправить личное сообщение для renatdmit Посмотреть профиль Найти все сообщения от renatdmit
 
Регистрация: 09.08.2016
Сообщений: 20

Сообщение от warren buffet Посмотреть сообщение
С таблицей с миллионом строк может стать заметной разница, но где оппонент такие таблицы-то видел на вебе и кто вообще такими сможет оперировать?
На 3 тысячах разница уже ощутима при не самом мощном ноуте 8-летней давности. И я не ваш оппонент. Чтобы вам оппонировать нужны от вас какие-то аргументы, отличающиеся от "делай как все, нигилист, а не через жопу".

Цитата:
Но тут важен не выбор метода, а смысл темы. ТС просто не знал про инсерты и применил известный ему метод как просто известный и освоенный, а вовсе не с явным умыслом ускорить там чего-то блин.
Это другое дело, но аргументы в пользу того или иного метода все равно нужны, чтобы человек делал сознательный выбор, а не потому что кто-то, тщащийся показаться авторитетным, ему это сказал.

Цитата:
Кстати, инсерт работает с таблицей, а для аппенда нужно еще tbody создать явно или явно получить.
Какой кошмар, это ж неделю кодить придется!
Ответить с цитированием
  #22 (permalink)  
Старый 10.08.2016, 12:15
Интересующийся
Отправить личное сообщение для renatdmit Посмотреть профиль Найти все сообщения от renatdmit
 
Регистрация: 09.08.2016
Сообщений: 20

рони,

Милый друг, я 2 недели назад первый раз открыл первую книжку по javascript, но даже мне не приходит в голову создавать в цикле TD

var cell= document.createElement('td');

когда есть cloneNode

Будьте любезны, посмотрите мой код. И учитесь пока я еще не стал мега гуру и не покинул вас, как безнадежных.
Ответить с цитированием
  #23 (permalink)  
Старый 10.08.2016, 12:21
Профессор
Отправить личное сообщение для warren buffet Посмотреть профиль Найти все сообщения от warren buffet
 
Регистрация: 08.07.2016
Сообщений: 1,332

Сообщение от renatdmit
ячейки просто копируются из любой строки
Ну если тебе нужна пустая таблица на 1000 строк, то просто нарисуй хтмл в переменной и вставь как innerHTML в body и замерь что быстрее, лал.
Ответить с цитированием
  #24 (permalink)  
Старый 10.08.2016, 12:23
Интересующийся
Отправить личное сообщение для renatdmit Посмотреть профиль Найти все сообщения от renatdmit
 
Регистрация: 09.08.2016
Сообщений: 20

warren buffet,

Уважаемый профессор, посмотрите пожалуйста мой код, я заполняю его данными для чистоты эксперимента.
Ответить с цитированием
  #25 (permalink)  
Старый 10.08.2016, 12:27
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,123

renatdmit,
спасибо, а тест можно что быстрее cloneNode или createElement?
Ответить с цитированием
  #26 (permalink)  
Старый 10.08.2016, 12:28
Профессор
Отправить личное сообщение для warren buffet Посмотреть профиль Найти все сообщения от warren buffet
 
Регистрация: 08.07.2016
Сообщений: 1,332

Сообщение от renatdmit
при не самом мощном ноуте 8-летней давности.
Вот в чем проблема, денег на новый ноут нету, и будем заниматься premature optimization.
Ответить с цитированием
  #27 (permalink)  
Старый 10.08.2016, 12:29
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,123

warren buffet,
renatdmit,
Ответить с цитированием
  #28 (permalink)  
Старый 10.08.2016, 12:32
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,123

renatdmit,
warren buffet,
Ответить с цитированием
  #29 (permalink)  
Старый 10.08.2016, 12:33
Профессор
Отправить личное сообщение для warren buffet Посмотреть профиль Найти все сообщения от warren buffet
 
Регистрация: 08.07.2016
Сообщений: 1,332

Сообщение от renatdmit
я заполняю его данными
Вот такими да? - row.insertCell().innerHTML = i;

У тебя же нет никакого хтмля в i, там просто число, то есть тут вообще-то .textContent, но, у тебя же нет текстовой ноды, поэтому ты рисуешь .innerHTML, а это значит проворачиваешь для каждой ячейки могучий парсер браузера. Поэтому твой ноут и тормозит как из пушки по воробьям.

Нарисуй массив и сделай из него таблицу своими аппендами.
Ответить с цитированием
  #30 (permalink)  
Старый 10.08.2016, 12:48
Интересующийся
Отправить личное сообщение для renatdmit Посмотреть профиль Найти все сообщения от renatdmit
 
Регистрация: 09.08.2016
Сообщений: 20

рони,

Сообщение от рони Посмотреть сообщение
renatdmit,
спасибо, а тест можно что быстрее cloneNode или createElement?
В вашем случае вынужден извиниться. AppendChild в цикле работает даже чуть быстрей чем cloneNode, разница процентов в 10. Тормозной только InsertRows.

Последний раз редактировалось renatdmit, 10.08.2016 в 12:51.
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Динамическое создание таблицы SQL Ambient Общие вопросы Javascript 7 19.07.2016 22:25
Google создание таблицы и запись данных aleks_lv Общие вопросы Javascript 2 07.12.2015 15:05
Создание таблицы с чекбоксом используя массив jeka Javascript под браузер 3 09.04.2014 17:23
Чтение файла + создание динамической таблицы Lexx32 (X)HTML/CSS 1 11.09.2013 13:25
Создание элементов под выбранной строкой таблицы Kitana Элементы интерфейса 4 05.09.2011 14:14