আমি নথির টুকরো টুকরো টুকরো সম্পর্কে জানতে এবং ডিওএম রিফ্লো নিয়ে ভাবছিলাম যে এটির document.createDocumentFragmentথেকে পৃথক document.createElementহওয়া কেমন দেখায় যতক্ষণ না আমি তাদের ডিওএম উপাদানগুলিতে সংযুক্ত করি না কেন এগুলির দুটিই বিদ্যমান নেই।
আমি একটি পরীক্ষা করেছিলাম (নীচে) এবং তাদের সবাই ঠিক একই পরিমাণ সময় নিয়েছিল (প্রায় 95 মিমি)। অনুমান হিসাবে এটি সম্ভবত উপাদানগুলির কোনওটিতে কোনও স্টাইল প্রয়োগ না হওয়ার কারণে হতে পারে, তাই কোনও পুনর্বিবেচনা নাও হতে পারে।
যাইহোক, নীচের উদাহরণের উপর ভিত্তি করে, DOM OMোকানোর সময় কেন আমি এর createDocumentFragmentপরিবর্তে ব্যবহার করব createElementএবং উভয়ের মধ্যে পার্থক্য কী।
var htmz = "<ul>";
for (var i = 0; i < 2001; i++) {
htmz += '<li><a href="#">link ' + i + '</a></li>';
}
htmz += '<ul>';
//createDocumentFragment
console.time('first');
var div = document.createElement("div");
div.innerHTML = htmz;
var fragment = document.createDocumentFragment();
while (div.firstChild) {
fragment.appendChild(div.firstChild);
}
$('#first').append(fragment);
console.timeEnd('first');
//createElement
console.time('second');
var span = document.createElement("span");
span.innerHTML = htmz;
$('#second').append(span);
console.timeEnd('second');
//jQuery
console.time('third');
$('#third').append(htmz);
console.timeEnd('third');