में जोड़ें। मेरे पास सर्वर से एक JSON सरणी आ रही है जिसमें 200 ऑब्जेक्ट्स की एक सरणी है जिसमें प्रत्येक 10 ऑब्जेक्ट्स हैं जिन्हें मैं एक टेबल प्रारूप में प्रदर्शित करना चाहता हूं। सबसे पहले मैं प्रत्येक पुनरावृत्ति के लिए <tr>
बना रहा था और सरणी मानों से <tr>
पर निर्मित <td>
संलग्न करने के लिए jQuery का उपयोग कर रहा था। यह क्रोम में लगभग 30 सेकंड और आईई 8 में 1 9 सेकेंड ले रहा था। यह बहुत लंबा समय ले रहा था इसलिए मैंने Array.join()
विधि पर स्विच करने का प्रयास किया, जहां मैं प्रत्येक स्ट्रिंग को स्टोर करता हूं जो पूरे टेबल को सरणी में बना देगा, और अंत में $('#myTable').append(textToAppend)
करें। यह वास्तव में लगभग 5 सेकंड तक मेरे पहले संस्करण से भी बदतर प्रदर्शन किया।जावास्क्रिप्ट प्रभावी रूप से जेएसओएन से टेबल बनाएं और इसे डीओएम
मैं इसे लगभग 10 सेकंड तक प्राप्त करना चाहता हूं। क्या मुझे उस पर कोई मौका है? यदि नहीं, तो मैं एक समय में एक पंक्ति जोड़ रहा हूं, लेकिन मैं ऐसा नहीं करूँगा।
for(allIndex = 0; allIndex < entries.alumnus.length; allIndex++){
var entry = '<tr id="entry' + allIndex + '" class="entry"></tr>';
$('#content_table').append(entry);
$('#entry' + allIndex).append(($.trim(entries.alumnus[allIndex].title) != '' ?
'<td id="title' + allIndex + '" class="cell"><span class="content">' +
entries.alumnus[allIndex].title + '</span></td>' : '<td width="5%">' +
filler + '</td>'));
.
.
.
.//REST OF ELEMENTS
.
.
.
}
अद्यतन: मैं कल कुछ, jQuery का उपयोग किए बिना गड़बड़ होना चाहिए क्योंकि मैं डोम से बाहर जोड़कर तत्वों की कोशिश कर रहा है और फिर उन्हें बाद में संलग्न करने के लिए वापस चला गया, और मैं 85 के लिए नीचे अपने समय मिल गया है क्रोम में एमएस और आईई 7 में 450 एमएस !!! तुम लड़के गजब हो!!! मैंने उपयोगकर्ता 1 को जवाब दिया क्योंकि वह अधिक व्यापक था, और टुकड़ों का उपयोग करने से वास्तव में क्रोम में मेरे समय में काफी बदलाव नहीं आया और आईई 7 में लगभग 20ms जोड़ा गया। लेकिन मैं अभी भी @Emre Erkan के उत्तर की सराहना करता हूं, और अधिक बार उपयोग करता हूं :)
क्या आपका मतलब है कि आपके पास 200 तत्वों के साथ एक JSON सरणी है, जिनमें से प्रत्येक 10 तत्वों की सरणी है? –
हाँ, गलती से मेरी शब्दावली मिश्रित :) – Eliezer
क्या आप हमें अपना कोड दिखा सकते हैं? –