प्रौद्योगिकी साझेदारी

अग्रभागस्य उच्च-आवृत्ति-साक्षात्कार-प्रश्नाः (1) .

2024-07-12

한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina

अग्र-अन्त-जेएस-साक्षात्कारेषु नित्यं प्रश्नाः अनेके पक्षाः समाविष्टाः सन्ति, यत्र मूलभूत-वाक्यविन्यासः, आँकडा-संरचना तथा एल्गोरिदम्, DOM-सञ्चालनम्, अतुल्यकालिक-प्रोग्रामिंग्, मॉड्यूलरीकरणम्, ढाञ्चा/पुस्तकालयस्य उपयोगः इत्यादयः सन्ति निम्नलिखित केचन सामान्याः उच्च-आवृत्ति-अग्र-अन्त-JS साक्षात्कार-प्रश्नाः तेषां संक्षिप्तं विश्लेषणं च सन्ति:

1. मूलव्याकरणम्

  • दत्तांशप्रकाराः भण्डारणभेदाः च :जावास्क्रिप्ट् मध्ये के दत्तांशप्रकाराः सन्ति ? स्मृतौ कथं संगृहीताः इति किं भेदः ? (यथा आदिमदत्तांशप्रकारस्य सन्दर्भदत्तांशप्रकारस्य च भेदः)
  • चर घोषणाvarletconst किं भेदः ? तेषां व्याप्तिः जीवनचक्रं च किम् ?
  • संचालकःi++तथा++iकिं भेदः ?breakतथाcontinueपाशस्य प्रयोगे कथं भिन्नं भवति ?

2. दत्तांशसंरचनानि एल्गोरिदम् च

  • सरणी क्रियाः : सरणीनां कृते सामान्यतया प्रयुक्ताः विधयः के सन्ति ? (इवpushpopshiftunshiftspliceslicejoinsortप्रतीक्षतु)
  • गभीरा प्रतिलिपिः उथली प्रतिलिपिः च :गहनप्रतिलिपिः उथलप्रतिलिपिः च किम् ? तानि कथं कार्यान्वितव्यानि ? (यदि उपयुज्यतेJSON.parse(JSON.stringify(obj)), प्रसारसञ्चालकः, पुनरावृत्तिः इत्यादयः विधयः)
  • क्रमबद्धता एल्गोरिदम: एकं क्रमाङ्कन-अल्गोरिदम् (यथा बबल-सॉर्ट्, द्रुत-सॉर्ट् इत्यादीनि) अवगन्तुं कार्यान्वितुं च

3. DOM संचालनम्

  • सामान्य DOM संचालन: DOM-तत्त्वानां चयनं, योजयितुं, विलोपनं, परिवर्तनं, जाँचम् इत्यादीनि कार्याणि कथं कर्तव्यानि?
  • innerHTML तथा innerText इति: तयोः मध्ये के भेदाः प्रयोज्यपरिदृश्यानि च सन्ति ?
  • घटना निबन्धनम् :जावास्क्रिप्ट् मध्ये इवेण्ट् मॉडल् किम् अस्ति ? इवेण्ट् प्रॉक्सी कथं कार्यान्वितुं शक्यते ?

4. अतुल्यकालिकप्रोग्रामिंग

  • वचनं :प्रतिज्ञा किम् ? तस्य त्रीणि अवस्थानि कानि सन्ति ?कथं प्रयोगः करणीयःPromise.allतथाPromise.race
  • Async/प्रतीक्षते : अतुल्यकालिकसञ्चालनानि नियन्त्रयितुं async/await इत्यस्य उपयोगः कथं करणीयः? प्रतिज्ञायाः सह कथं सम्बन्धः ?
  • कॉलबैक फंक्शन्स् तथा इवेण्ट् लूप्स्: जावास्क्रिप्ट् इवेण्ट् लूप् मेकेनिज्म् अवगन्तुं तथा च कॉलबैक् फंक्शन्स् कथं कार्यं कुर्वन्ति?

5. मॉड्यूलरता

  • ES6 मॉड्यूलर: ES6 (import/export), तस्य च के लाभाः सन्ति ?
  • CommonJS तथा AMD/CMD: CommonJS, AMD तथा CMD मॉड्यूल विनिर्देशानां भेदं प्रयोज्यपरिदृश्यानि च अवगन्तुं तुलनां च कुर्वन्तु।

6. रूपरेखा/पुस्तकालयस्य उपयोगः

  • प्रतिक्रिया/Vue/कोणीय: एतेषां अग्रभागीयरूपरेखानां/पुस्तकालयानां लक्षणं, लाभं, प्रयोज्यपरिदृश्यं च अवगन्तुं तुलनां च कुर्वन्तु।
  • जीवनचक्रम्: React, Vue इत्यादिषु ढाञ्चेषु घटकानां जीवनचक्रं किम् ?
  • स्थिति प्रबन्धन: React इत्यस्मिन् Redux अथवा Vuex इत्यादीनां राज्यप्रबन्धनसाधनानाम् उपयोगः कथं करणीयः?

7. अन्ये उच्चावृत्तिविषया:

  • आद्यरूपाः आद्यरूपशृङ्खलाः च: जावास्क्रिप्ट् इत्यस्मिन् प्रोटोटाइप् तथा प्रोटोटाइप् चेन मेकेनिज्म् तथा तेषां कार्याणि अवगच्छन्तु।
  • एषः कीवर्डः: जावास्क्रिप्ट् अवगन्तुम्thisविभिन्नेषु परिदृश्येषु नियमाः कार्यप्रदर्शनं च दर्शयन्।
  • समापनम्: समापनस्य अवधारणा, कार्यं, उपयोगपरिदृश्यं च अवगच्छन्तु।
  • कचरा संग्रहण तन्त्रम्: जावास्क्रिप्ट् मध्ये कचरासंग्रहणतन्त्रं (यथा मार्क-स्वीप् विधिः, सन्दर्भगणनाविधिः इत्यादयः) अवगच्छन्तु ।

नमूनाप्रश्नाः विश्लेषणं च

नमूनाप्रश्नाः: कृपया जावास्क्रिप्ट् मध्ये आद्यशृङ्खलातन्त्रं व्याख्यातव्यम् ।

पार्से

  • आद्यशृङ्खला जावास्क्रिप्ट् मध्ये उत्तराधिकारस्य कार्यान्वयनस्य तन्त्रम् अस्ति ।
  • प्रत्येकं वस्तुनः क__proto__गुणाः (ES6 मध्ये अनुशंसिताःObject.getPrototypeOf()method), एषः गुणः तस्य कन्स्ट्रक्टर् इत्यस्य कृते सूचयतिprototypeगुणाः ।
  • वस्तुनः गुणं विधिं वा अभिगत्य यदि गुणः विधिः वा वस्तुनि एव नास्ति तर्हि तस्य आद्यशृङ्खलायां यावत् सः आद्यशृङ्खलायाः शिखरं न लभ्यते वा न प्राप्नोति (Object.prototype)。
  • आद्यशृङ्खलायाः उपरिभागः अस्तिnull, अन्वेष्टुं अधिकानि आदर्शवस्तूनि नास्ति इति सूचयति ।
  • आद्यशृङ्खलायाः माध्यमेन वस्तुनां मध्ये गुणसाझेदारी, विधिविरासतां च प्राप्तुं शक्यते ।

1. जावास्क्रिप्ट् मध्ये के दत्तांशप्रकाराः सन्ति ? तेषु किं भेदः ?

उत्तरम्‌
जावास्क्रिप्ट् इत्यस्मिन् ८ दत्तांशप्रकाराः सन्ति, येषु मूलभूतदत्तांशप्रकाराः (Primitive Types) सन्दर्भदत्तांशप्रकाराः (Reference Types) च सन्ति ।

  • मूलभूतदत्तांशप्रकाराः
    • अनिर्दिष्टम्: अनिर्धारितं, यदा चरः घोषितः भवति परन्तु न नियुक्तः भवति तदा मूल्यम् ।
    • लुप्तमूल्य: शून्यं मूल्यं, रिक्तं वस्तुसन्दर्भं सूचयति ।
    • बूलियन इति: बूलियन प्रकारः, केवलं द्वौ मूल्यौ, सत्यं असत्यं च ।
    • संख्या: संख्यात्मकप्रकाराः, यत्र पूर्णाङ्काः, प्लवमानबिन्दुसङ्ख्याः च सन्ति ।
    • सूत्र: स्ट्रिंग् प्रकारः, पाठदत्तांशस्य प्रतिनिधित्वार्थं प्रयुक्तः ।
    • चिह्न: अद्वितीयपरिचयकानां निर्माणार्थं प्रयुक्तः अद्वितीयः मूल्यप्रकारः ।
    • BigInt: बृहत् पूर्णाङ्कप्रकारः, मनमाना सटीकतायां पूर्णाङ्कानां प्रतिनिधित्वार्थं प्रयुक्तः ।
  • सन्दर्भदत्तांशप्रकारः
    • वस्तु: Object type, यः जावास्क्रिप्ट् इत्यस्मिन् सर्वेषां जटिलदत्तांशप्रकारस्य आधारवर्गः अस्ति, यत्र arrays (Array), functions (Function), dates (Date) इत्यादयः सन्ति ।

आदिमदत्तांशप्रकारस्य सन्दर्भदत्तांशप्रकारस्य च मुख्यः अन्तरः अस्ति यत् ते कथं संगृह्यन्ते, कथं नियुक्ताः च भवन्ति । मूलभूतदत्तांशप्रकारस्य मूल्यानि स्टैकस्मृतौ संगृह्यन्ते, तथा च मूल्यानि प्रत्यक्षतया असाइनमेण्ट्-काले प्रतिलिपिताः भवन्ति, यदा तु सन्दर्भदत्तांशप्रकारस्य मूल्यानि ढेरस्मृतौ संगृह्यन्ते, तथा च स्टैक्-स्मृतिः मूल्यानां सन्दर्भान् (अर्थात् पता) संगृह्णाति heap memory इत्यस्मिन्, ये assignment इत्यस्य समये प्रतिलिपिताः भवन्ति इति सन्दर्भः ।

2. जावास्क्रिप्ट् मध्ये व्याप्तेः समापनस्य च विषये चर्चां कुर्वन्तु?

उत्तरम्‌

  • लब्द्धावसर : कोडखण्डे चराः, कार्याणि च इत्यादीनां परिचयकानां वैधपरिधिं निर्दिशति । जावास्क्रिप्ट् मुख्यतया द्वौ व्याप्तौ स्तः : वैश्विकव्याप्तिः स्थानीयव्याप्तिः च (फंक्शनव्याप्तिः, ब्लॉक-स्तरीयव्याप्तिः इत्यादयः समाविष्टाः) । वैश्विकव्याप्तेः चराः सम्पूर्णे स्क्रिप्ट् मध्ये दृश्यन्ते, यदा तु स्थानीयव्याप्तेः चराः केवलं तस्य कोडखण्डस्य अन्तः एव अभिगन्तुं शक्यन्ते यस्मिन् सः परिभाषितः अस्ति ।

  • समापनम् : इत्यस्य अर्थः अस्ति यत् कश्चन कार्यः स्वस्य शाब्दिकव्याप्तेः स्मरणं करोति, तस्य प्रवेशं च प्राप्नोति, यद्यपि कार्यं तस्य शाब्दिकव्याप्तेः बहिः निष्पादितं भवति । समापनस्य मुख्याः उपयोगाः निजीचरानाम् समाहितीकरणं, मॉड्यूलानां निर्माणम् इत्यादयः सन्ति । समापनेन कार्याणां बहिः चरानाम् अभिगमनं, परिवर्तनं च भवति, एते चरः कार्यात् बहिः अपि सहजतया दूषिताः परिवर्तिताः वा न भवन्ति

3. जावास्क्रिप्ट् मध्ये एसिंक्रोनस् प्रोग्रामिंग् तथा प्रोमिस् इति व्याख्यातव्यम्?

उत्तरम्‌

  • अतुल्यकालिक प्रोग्रामिंग : इत्यस्य अर्थः अस्ति यत् कोडस्य निष्पादनक्रमः लेखनक्रमस्य आधारेण न भवति, अपितु कतिपयानां शर्तानाम् (यथा संजाल-अनुरोधः, सञ्चिका-पठनं लेखनं च इत्यादीनां) समाप्तेः आधारेण निर्धारितः भवति जावास्क्रिप्ट् एक-थ्रेडेड् अस्ति, परन्तु इवेण्ट् लूप्, कॉलबैक् फंक्शन् इत्येतयोः माध्यमेन अतुल्यकालिकप्रोग्रामिंग् कार्यान्वितं करोति ।

  • वचनं : ES6 इत्यस्मिन् प्रवर्तितं नूतनं वस्तु अस्ति, यत् अतुल्यकालिकसञ्चालनानि नियन्त्रयितुं उपयुज्यते । Promise ऑब्जेक्ट् एकं ऑपरेशनं प्रतिनिधियति यत् इदानीं न सम्पन्नं भवेत्, परन्तु भविष्ये पूर्णं भविष्यति (अथवा विफलं भविष्यति) तस्य परिणाममूल्यं च । प्रतिज्ञायाः त्रयः अवस्थाः सन्ति : लम्बितम् (प्रगतिम्), पूर्णं (सफलम्) अस्वीकृतं (विफलम्) च । Promise इत्यस्य माध्यमेन वयं समन्वयात्मकरूपेण अतुल्यकालिकसङ्केतं लिखितुं शक्नुमः, येन कोडः अधिकः संक्षिप्तः, अवगन्तुं, परिपालनं च सुलभं भवति ।

4. जावास्क्रिप्ट् मध्ये इवेण्ट् बब्लिंग् तथा इवेण्ट् कैप्चरिंग् इत्येतयोः विषये चर्चां कुर्वन्तु?

उत्तरम्‌

  • घटना बुदबुदाति : इत्यस्य अर्थः अस्ति यत् घटना लक्ष्यतत्त्वात् आरभ्य ततः DOM वृक्षस्य (अर्थात् दस्तावेजवस्तु) उपरितनस्तरं यावत् प्रसारयति । इवेण्ट् बब्लिंग् प्रक्रियायाः समये DOM एलिमेण्ट्स् इत्यस्य कोऽपि स्तरः इवेण्ट् गृहीत्वा प्रोसेस् कर्तुं शक्नोति ।

  • घटनाग्रहणम् : इवेण्ट् बब्लिंग् इत्यस्य विपरीतम्, इवेण्ट् कैप्चर् DOM वृक्षस्य उपरि आरभ्यते ततः लक्ष्यतत्त्वं यावत् अधः प्रसारयति । इवेण्ट् कैप्चर प्रक्रियायाः समये DOM एलिमेण्ट्स् इत्यस्य कोऽपि स्तरः इवेण्ट् कैप्चर् कृत्वा प्रोसेस् कर्तुं शक्नोति ।

जावास्क्रिप्ट् मध्ये, भवान् addEventListener मेथड् इत्यस्य तृतीयपैरामीटर् इत्यस्य माध्यमेन इवेण्ट् प्रोसेसिङ्ग् मेथड् सेट् कर्तुं शक्नोति, अर्थात् इवेण्ट् बब्लिंग् अथवा इवेण्ट् कैप्चर इत्यस्य उपयोगं कर्तुं शक्नोति । यदि तृतीयः पैरामीटर् सत्यः अस्ति तर्हि तस्य अर्थः इवेण्ट् कैप्चरिंग् इत्यस्य उपयोगः यदि मिथ्या अथवा लोपितः अस्ति तर्हि इवेण्ट् बब्लिंग् इत्यस्य उपयोगः इति अर्थः ।

5. ES6+ इत्यस्मिन् कानि नवीनविशेषतानि प्रवर्तन्ते?

उत्तरम्‌
ES6 (ECMAScript 2015) तथा तदनन्तरं संस्करणेषु बहवः नवीनविशेषताः प्रवर्तन्ते, येषु अत्रैव सीमिताः न सन्ति:

  • let and const: ब्लॉक-स्तरीयव्याप्तेः स्थानीयचरानाम्, स्थिरांकानां च घोषणार्थं प्रयुक्तम् ।
  • बाण कार्य: कार्यलेखनस्य संक्षिप्ततरं मार्गं प्रदाति, स्वस्य एतत्, तर्कादिकं न बध्नाति।
  • टेम्पलेट स्ट्रिंग: एम्बेडेड् एक्सप्रेशन्स् इत्यस्य अनुमतिं ददाति बहुपङ्क्तिस्ट्रिंग् इत्यस्य समर्थनं च करोति ।
  • असाइनमेण्टं विध्वंसयन्: सरणीतः अथवा वस्तुतः दत्तांशं निष्कास्य घोषितचरं प्रति नियुक्तं कर्तुं अनुमतिं ददाति ।
  • पूर्वनिर्धारितमापदण्डमूल्यानि, अवशिष्टानि मापदण्डानि, प्रसारसञ्चालकाः च: वर्धितानि कार्यमापदण्डसंसाधनक्षमता।
  • प्रतिज्ञां कुरुत तथा async/wait: अतुल्यकालिकसञ्चालनानि नियन्त्रयितुं प्रयुक्तः, अतुल्यकालिकसङ्केतः अधिकं संक्षिप्तः, अवगन्तुं च सुलभः भवति ।
  • वर्गवाक्यविन्यासः: पारम्परिकवस्तु-उन्मुखप्रोग्रामिङ्गस्य समीपे ये वर्गाः सन्ति तेषां कृते वाक्यविन्यासशर्करा प्रदाति ।
  • मॉड्यूलाः: ES6 मॉड्यूल वाक्यविन्यासस्य समर्थनं करोति तथा च जावास्क्रिप्ट् मध्ये मॉड्यूलर प्रोग्रामिंग् कार्यान्वयति ।