2024-07-12
한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina
अग्र-अन्त-जेएस-साक्षात्कारेषु नित्यं प्रश्नाः अनेके पक्षाः समाविष्टाः सन्ति, यत्र मूलभूत-वाक्यविन्यासः, आँकडा-संरचना तथा एल्गोरिदम्, DOM-सञ्चालनम्, अतुल्यकालिक-प्रोग्रामिंग्, मॉड्यूलरीकरणम्, ढाञ्चा/पुस्तकालयस्य उपयोगः इत्यादयः सन्ति निम्नलिखित केचन सामान्याः उच्च-आवृत्ति-अग्र-अन्त-JS साक्षात्कार-प्रश्नाः तेषां संक्षिप्तं विश्लेषणं च सन्ति:
var
、let
、const
किं भेदः ? तेषां व्याप्तिः जीवनचक्रं च किम् ?i++
तथा++i
किं भेदः ?break
तथाcontinue
पाशस्य प्रयोगे कथं भिन्नं भवति ?push
、pop
、shift
、unshift
、splice
、slice
、join
、sort
प्रतीक्षतु)JSON.parse(JSON.stringify(obj))
, प्रसारसञ्चालकः, पुनरावृत्तिः इत्यादयः विधयः)Promise.all
तथाPromise.race
?import
/export
), तस्य च के लाभाः सन्ति ?this
विभिन्नेषु परिदृश्येषु नियमाः कार्यप्रदर्शनं च दर्शयन्।नमूनाप्रश्नाः: कृपया जावास्क्रिप्ट् मध्ये आद्यशृङ्खलातन्त्रं व्याख्यातव्यम् ।
पार्से:
__proto__
गुणाः (ES6 मध्ये अनुशंसिताःObject.getPrototypeOf()
method), एषः गुणः तस्य कन्स्ट्रक्टर् इत्यस्य कृते सूचयतिprototype
गुणाः ।Object.prototype
)。null
, अन्वेष्टुं अधिकानि आदर्शवस्तूनि नास्ति इति सूचयति ।1. जावास्क्रिप्ट् मध्ये के दत्तांशप्रकाराः सन्ति ? तेषु किं भेदः ?
उत्तरम्:
जावास्क्रिप्ट् इत्यस्मिन् ८ दत्तांशप्रकाराः सन्ति, येषु मूलभूतदत्तांशप्रकाराः (Primitive Types) सन्दर्भदत्तांशप्रकाराः (Reference Types) च सन्ति ।
आदिमदत्तांशप्रकारस्य सन्दर्भदत्तांशप्रकारस्य च मुख्यः अन्तरः अस्ति यत् ते कथं संगृह्यन्ते, कथं नियुक्ताः च भवन्ति । मूलभूतदत्तांशप्रकारस्य मूल्यानि स्टैकस्मृतौ संगृह्यन्ते, तथा च मूल्यानि प्रत्यक्षतया असाइनमेण्ट्-काले प्रतिलिपिताः भवन्ति, यदा तु सन्दर्भदत्तांशप्रकारस्य मूल्यानि ढेरस्मृतौ संगृह्यन्ते, तथा च स्टैक्-स्मृतिः मूल्यानां सन्दर्भान् (अर्थात् पता) संगृह्णाति heap memory इत्यस्मिन्, ये assignment इत्यस्य समये प्रतिलिपिताः भवन्ति इति सन्दर्भः ।
2. जावास्क्रिप्ट् मध्ये व्याप्तेः समापनस्य च विषये चर्चां कुर्वन्तु?
उत्तरम्:
लब्द्धावसर : कोडखण्डे चराः, कार्याणि च इत्यादीनां परिचयकानां वैधपरिधिं निर्दिशति । जावास्क्रिप्ट् मुख्यतया द्वौ व्याप्तौ स्तः : वैश्विकव्याप्तिः स्थानीयव्याप्तिः च (फंक्शनव्याप्तिः, ब्लॉक-स्तरीयव्याप्तिः इत्यादयः समाविष्टाः) । वैश्विकव्याप्तेः चराः सम्पूर्णे स्क्रिप्ट् मध्ये दृश्यन्ते, यदा तु स्थानीयव्याप्तेः चराः केवलं तस्य कोडखण्डस्य अन्तः एव अभिगन्तुं शक्यन्ते यस्मिन् सः परिभाषितः अस्ति ।
समापनम् : इत्यस्य अर्थः अस्ति यत् कश्चन कार्यः स्वस्य शाब्दिकव्याप्तेः स्मरणं करोति, तस्य प्रवेशं च प्राप्नोति, यद्यपि कार्यं तस्य शाब्दिकव्याप्तेः बहिः निष्पादितं भवति । समापनस्य मुख्याः उपयोगाः निजीचरानाम् समाहितीकरणं, मॉड्यूलानां निर्माणम् इत्यादयः सन्ति । समापनेन कार्याणां बहिः चरानाम् अभिगमनं, परिवर्तनं च भवति, एते चरः कार्यात् बहिः अपि सहजतया दूषिताः परिवर्तिताः वा न भवन्ति
3. जावास्क्रिप्ट् मध्ये एसिंक्रोनस् प्रोग्रामिंग् तथा प्रोमिस् इति व्याख्यातव्यम्?
उत्तरम्:
अतुल्यकालिक प्रोग्रामिंग : इत्यस्य अर्थः अस्ति यत् कोडस्य निष्पादनक्रमः लेखनक्रमस्य आधारेण न भवति, अपितु कतिपयानां शर्तानाम् (यथा संजाल-अनुरोधः, सञ्चिका-पठनं लेखनं च इत्यादीनां) समाप्तेः आधारेण निर्धारितः भवति जावास्क्रिप्ट् एक-थ्रेडेड् अस्ति, परन्तु इवेण्ट् लूप्, कॉलबैक् फंक्शन् इत्येतयोः माध्यमेन अतुल्यकालिकप्रोग्रामिंग् कार्यान्वितं करोति ।
वचनं : ES6 इत्यस्मिन् प्रवर्तितं नूतनं वस्तु अस्ति, यत् अतुल्यकालिकसञ्चालनानि नियन्त्रयितुं उपयुज्यते । Promise ऑब्जेक्ट् एकं ऑपरेशनं प्रतिनिधियति यत् इदानीं न सम्पन्नं भवेत्, परन्तु भविष्ये पूर्णं भविष्यति (अथवा विफलं भविष्यति) तस्य परिणाममूल्यं च । प्रतिज्ञायाः त्रयः अवस्थाः सन्ति : लम्बितम् (प्रगतिम्), पूर्णं (सफलम्) अस्वीकृतं (विफलम्) च । Promise इत्यस्य माध्यमेन वयं समन्वयात्मकरूपेण अतुल्यकालिकसङ्केतं लिखितुं शक्नुमः, येन कोडः अधिकः संक्षिप्तः, अवगन्तुं, परिपालनं च सुलभं भवति ।
4. जावास्क्रिप्ट् मध्ये इवेण्ट् बब्लिंग् तथा इवेण्ट् कैप्चरिंग् इत्येतयोः विषये चर्चां कुर्वन्तु?
उत्तरम्:
घटना बुदबुदाति : इत्यस्य अर्थः अस्ति यत् घटना लक्ष्यतत्त्वात् आरभ्य ततः DOM वृक्षस्य (अर्थात् दस्तावेजवस्तु) उपरितनस्तरं यावत् प्रसारयति । इवेण्ट् बब्लिंग् प्रक्रियायाः समये DOM एलिमेण्ट्स् इत्यस्य कोऽपि स्तरः इवेण्ट् गृहीत्वा प्रोसेस् कर्तुं शक्नोति ।
घटनाग्रहणम् : इवेण्ट् बब्लिंग् इत्यस्य विपरीतम्, इवेण्ट् कैप्चर् DOM वृक्षस्य उपरि आरभ्यते ततः लक्ष्यतत्त्वं यावत् अधः प्रसारयति । इवेण्ट् कैप्चर प्रक्रियायाः समये DOM एलिमेण्ट्स् इत्यस्य कोऽपि स्तरः इवेण्ट् कैप्चर् कृत्वा प्रोसेस् कर्तुं शक्नोति ।
जावास्क्रिप्ट् मध्ये, भवान् addEventListener मेथड् इत्यस्य तृतीयपैरामीटर् इत्यस्य माध्यमेन इवेण्ट् प्रोसेसिङ्ग् मेथड् सेट् कर्तुं शक्नोति, अर्थात् इवेण्ट् बब्लिंग् अथवा इवेण्ट् कैप्चर इत्यस्य उपयोगं कर्तुं शक्नोति । यदि तृतीयः पैरामीटर् सत्यः अस्ति तर्हि तस्य अर्थः इवेण्ट् कैप्चरिंग् इत्यस्य उपयोगः यदि मिथ्या अथवा लोपितः अस्ति तर्हि इवेण्ट् बब्लिंग् इत्यस्य उपयोगः इति अर्थः ।
5. ES6+ इत्यस्मिन् कानि नवीनविशेषतानि प्रवर्तन्ते?
उत्तरम्:
ES6 (ECMAScript 2015) तथा तदनन्तरं संस्करणेषु बहवः नवीनविशेषताः प्रवर्तन्ते, येषु अत्रैव सीमिताः न सन्ति: