document.write()
का इस्तेमाल करने पर, पेज के कॉन्टेंट को दिखने में 10 सेकंड से ज़्यादा समय लग सकता है. यह समस्या, धीमे इंटरनेट कनेक्शन का इस्तेमाल करने वाले लोगों के लिए खास तौर पर परेशानी वाली हो सकती है.
इसलिए, Chrome कई मामलों में document.write()
को लागू होने से रोकता है. इसका मतलब है कि इस पर भरोसा नहीं किया जा सकता.
document.write()
का इस्तेमाल करने पर, आपको Chrome DevTools कंसोल में यह मैसेज दिखेगा:
[Violation] Avoid using document.write().
Firefox DevTools कंसोल में आपको यह मैसेज दिखेगा:
An unbalanced tree was written using document.write() causing
data from the network to be reparsed.
Lighthouse document.write()
ऑडिट पूरा न होने की वजह
Lighthouse, document.write()
को ऐसे कॉल फ़्लैग करता है जिन्हें Chrome ने ब्लॉक नहीं किया है:
सबसे ज़्यादा समस्या वाले इस्तेमाल के लिए, Chrome document.write()
को कॉल करने पर रोक लगा देगा या उपयोगकर्ता के कनेक्शन की स्पीड के आधार पर, उनके बारे में कंसोल चेतावनी देगा.
दोनों ही मामलों में, जिन कॉल पर असर पड़ा है वे DevTools कंसोल में दिखते हैं.
ज़्यादा जानकारी के लिए, Google का document.write()
के ख़िलाफ़ कार्रवाई करना लेख पढ़ें.
Lighthouse, document.write()
पर बाकी बचे सभी कॉल की रिपोर्ट करता है, क्योंकि इसका इस्तेमाल चाहे किसी भी तरह से किया जाए, परफ़ॉर्मेंस पर इसका बुरा असर पड़ता है. साथ ही, इसके बेहतर विकल्प भी मौजूद हैं.
document.write()
से बचें
अपने कोड में document.write()
का इस्तेमाल हटाएं. अगर इसका इस्तेमाल तीसरे पक्ष की स्क्रिप्ट इंजेक्ट करने के लिए किया जा रहा है, तो इसके बजाय एसिंक्रोनस लोडिंग का इस्तेमाल करें.
अगर तीसरे पक्ष का कोड document.write()
का इस्तेमाल कर रहा है, तो सेवा देने वाली कंपनी से एसिंक्रोनस लोडिंग की सुविधा देने के लिए कहें.