HTML के stream होते ही parser DOM बनाता जाता है, लेकिन stylesheet rendering रोक देती है क्योंकि ब्राउज़र बिना style वाले content के साथ paint नहीं करेगा, और defer या async के बिना कोई classic script parser को पूरी तरह रोक देती है। CSS और रोकने वाली scripts निपटने पर ब्राउज़र render tree बनाता है, layout करता है, paint और composite करता है। आम अपराधी हैं render रोकने वाली CSS, head में synchronous scripts और देर से पता चलने वाले fonts या hero images।
इंटरव्यूअर यह क्यों पूछते हैं
इंटरव्यूअर जानना चाहता है कि आप Lighthouse की चेकलिस्ट रटने की जगह load परफॉर्मेंस पर बुनियादी सिद्धांतों से तर्क कर सकते हैं या नहीं। preload scanner, defer बनाम async और resource priority का ज़िक्र असली जान पहचान दिखाता है। इससे LCP पर फॉलो अप भी बनते हैं, क्योंकि इलाज इस पर निर्भर करता है कि अड़चन discovery है, network है, या scripts पढ़ने और चलाने में उलझा main thread।
अपना जवाब कैसे स्ट्रक्चर करें
- पाइपलाइन क्रम से बताएं: parse, style, layout, paint, composite।
- जो parser को रोकता है और जो paint को रोकता है, उन्हें अलग करें।
- preload scanner और resource की खोज का ज़िक्र करें।
- अंत में वे दो तीन इलाज बताएं जो आप सबसे पहले आज़माएंगे।
उदाहरण जवाब
HTML के stream होते ही parser DOM को टुकड़ों में बनाता जाता है, और साथ ही preload scanner आगे देखकर images, scripts और stylesheets ढूंढता है ताकि उन्हें जल्दी लाना शुरू कर सके। CSS render रोकती है, क्योंकि ब्राउज़र ऐसा content paint नहीं करेगा जिसे एक frame बाद दोबारा style करना पड़ सकता है, तो DOM तैयार होने के बावजूद धीमी stylesheet पहला paint रोके रखती है। बिना defer या async वाला classic script tag इससे भी बुरा है, क्योंकि वह download और execute होते समय parsing पूरी तरह रोक देता है। styles आ जाने पर ब्राउज़र render tree बनाता है, layout करता है, paint और composite करता है। जब मुझे चार सेकंड का पहला paint मिलता है तो मेरी पहली तीन जांचें हैं: head में कोई script रोक तो नहीं रही, CSS एक विशाल फाइल तो नहीं जिसे critical inline हिस्से में बांटा जा सके, और LCP वाली image HTML में मिलती है या JavaScript से डाली जाती है। पिछली साइट में hero image के लिए preload जोड़ने और एक tag manager script को defer पर ले जाने से 4G पर LCP से करीब 1.6 सेकंड कम हो गए।
जल्दी ही यह इंटरव्यू देने जा रहे हैं? GhostPilot आपकी लाइव कॉल सुनता है, सवाल पूछे जाते ही उसे पकड़ लेता है, और रियल-टाइम में एक स्ट्रक्चर्ड जवाब आपकी स्क्रीन पर डाल देता है। अगले मॉक में इसे आजमाएं, या ले लें एक $29 Session Pass, कोई सब्सक्रिप्शन नहीं, असली इंटरव्यू के लिए।
देखें यह कैसे काम करता हैफॉलो-अप सवाल जिनकी उम्मीद रखें
- आपके लिए defer और async में व्यावहारिक फर्क क्या है?
- preload scanner इस बात को कैसे बदलता है कि आप शुरुआती HTML में क्या रखते हैं?
- critical CSS को inline करना cache की कीमत के लायक कब होता है?
फ्रंटएंड डेवलपर के और सवाल
आपका इंटरव्यूअर इसका अपना वर्ज़न पूछेगा। फ्री Question Predictor में अपना असली जॉब डिस्क्रिप्शन पेस्ट कीजिए और वो 20 सवाल पाइए जो उस रोल में सबसे ज्यादा पूछे जाने की संभावना है, साथ में यह भी कि हर सवाल असल में क्या टटोल रहा है।
मेरे सवाल प्रेडिक्ट करें