برنامه نویسی

سوالات و پاسخ های مصاحبه JavaScript برای بازار کار در بنگلادش

این مخزن حاوی 85 سؤال و پاسخ مصاحبه JavaScript متناسب با بازار کار در بنگلادش. این سؤالات برای کمک به شما در آماده سازی برای مصاحبه های فنی و بهبود درک خود از مفاهیم JavaScript طراحی شده اند. این سؤالات از موضوعات اساسی تا پیشرفته متغیر است و از آماده سازی جامع اطمینان حاصل می کند.


فهرست مطالب

  1. سوالات اساسی جاوا اسکریپت
  2. سوالات جاوا اسکریپت متوسط
  3. سوالات پیشرفته جاوا اسکریپت
  4. سوالات دستکاری دام
  5. سوالات جاوا اسکریپت ناهمزمان
  6. ES6+ دارای سوالات است
  7. چالش های برنامه نویسی جاوا اسکریپت

سوالات اساسی جاوا اسکریپت

  1. جاوا اسکریپت چیست؟

    • JavaScript یک زبان برنامه نویسی با سطح بالا و تفسیر شده است که برای تعاملی صفحات وب استفاده می شود. این یک فناوری اصلی وب در کنار HTML و CSS است.
  2. انواع داده ها در JavaScript چیست؟

    • JavaScript دارای 7 نوع داده بدوی است: stringبا numberبا booleanبا nullبا undefinedبا symbolوت bigintبشر همچنین دارای یک نوع داده غیر پیشگیرانه است: objectبشر
  3. تفاوت بین چیست letبا constوت var؟

    • var عملکردی است و می تواند دوباره تغییر یافته و به روز شود.
    • let بلوک است و می تواند به روز شود اما دوباره تغییر شکل نداده است.
    • const بلوک است و نمی توان آن را به روز کرد یا دوباره تغییر داد.
  4. تفاوت بین چیست == وت ===؟

    • == بررسی برابری پس از اجبار نوع.
    • === بررسی برابری دقیق و بدون اجبار.
  5. چیست NaN در جاوا اسکریپت؟

    • NaN مخفف “Not-A-Number” است و مقداری است که یک عدد نامعتبر را نشان می دهد.
  6. استفاده از چیست typeof اپراتور؟

    • در typeof از اپراتور برای تعیین نوع متغیر یا بیان استفاده می شود.
  7. تفاوت بین چیست null وت undefined؟

    • null عدم وجود عمدی از هر ارزش است ، در حالی که undefined به معنای متغیر اعلام شده است اما یک مقدار اختصاص داده نشده است.
  8. بالا رفتن در جاوا اسکریپت چیست؟

    • بالابر مکانیسمی است که اعلامیه های متغیر و عملکرد در مرحله تدوین به بالای دامنه آنها منتقل می شوند.
  9. دامنه جاوا اسکریپت چیست؟

    • دامنه به دسترسی یا دید متغیرها ، توابع و اشیاء در بخش خاصی از کد شما در زمان اجرا اشاره دارد.
  10. تفاوت بین چیست function declaration وت function expression؟

    • اعلامیه عملکرد بلند می شود ، در حالی که یک عبارت عملکرد نیست.

سوالات جاوا اسکریپت متوسط

  1. بسته شدن در جاوا اسکریپت چیست؟

    • بسته شدن تابعی است که حتی پس از بازگشت عملکرد بیرونی ، به دامنه عملکرد بیرونی خود دسترسی دارد.
  2. چیست this کلمه کلیدی در جاوا اسکریپت؟

    • در this کلمه کلیدی به شیئی اشاره دارد که عملکرد خاصیت آن است. مقدار آن به نحوه فراخوانی عملکرد بستگی دارد.
  3. نمایندگی رویداد چیست؟

    • نمایندگی رویداد تکنیکی است که در آن شما یک شنونده رویداد را به یک عنصر والدین اضافه می کنید تا رویدادهایی را برای همه عناصر فرزند خود اداره کنید.
  4. تفاوت بین چیست null وت undefined؟

    • null عدم وجود عمدی از هر ارزش است ، در حالی که undefined به معنای متغیر اعلام شده است اما یک مقدار اختصاص داده نشده است.
  5. بالا رفتن در جاوا اسکریپت چیست؟

    • بالابر مکانیسمی است که اعلامیه های متغیر و عملکرد در مرحله تدوین به بالای دامنه آنها منتقل می شوند.
  6. تفاوت بین چیست callبا applyوت bind؟

    • call وت apply برای فراخوانی یک تابع با یک خاص استفاده می شود this ارزش و استدلال
    • bind یک عملکرد جدید با یک خاص ایجاد می کند this ارزش اما بلافاصله آن را فراخوانی نمی کند.
  7. وعده های موجود در جاوا اسکریپت چیست؟

    • وعده ها اشیاء هستند که نشان دهنده تکمیل نهایی (یا عدم موفقیت) یک عمل ناهمزمان و مقدار حاصل از آن است.
  8. در جاوا اسکریپت Async/منتظر چیست؟

    • async/await قند نحوی برای کار با وعده ها است ، باعث می شود کد ناهمزمان به نظر برسد و مانند کد همزمان رفتار کند.
  9. حلقه رویداد در JavaScript چیست؟

    • حلقه رویداد مکانیسمی است که به JavaScript اجازه می دهد تا با بارگیری عملیات به هسته سیستم ، عملیات I/O را غیر مسدود کند.
  10. تفاوت بین چیست setTimeout وت setInterval؟

    • setTimeout یک عملکرد را یک بار پس از تأخیر مشخص ، در حالی که انجام می دهد setInterval یک تابع را به طور مکرر در فواصل مشخص انجام می دهد.

سوالات پیشرفته جاوا اسکریپت

  1. زنجیره نمونه اولیه در جاوا اسکریپت چیست؟

    • هر شیء در JavaScript دارای نمونه اولیه است و زنجیره نمونه اولیه به اشیاء اجازه می دهد خواص و روش های نمونه های اولیه خود را به ارث برده باشند.
  2. تفاوت بین چیست callبا applyوت bind؟

    • call وت apply برای فراخوانی یک تابع با یک خاص استفاده می شود this ارزش و استدلال
    • bind یک عملکرد جدید با یک خاص ایجاد می کند this ارزش اما بلافاصله آن را فراخوانی نمی کند.
  3. وعده های موجود در جاوا اسکریپت چیست؟

    • وعده ها اشیاء هستند که نشان دهنده تکمیل نهایی (یا عدم موفقیت) یک عمل ناهمزمان و مقدار حاصل از آن است.
  4. در جاوا اسکریپت Async/منتظر چیست؟

    • async/await قند نحوی برای کار با وعده ها است ، باعث می شود کد ناهمزمان به نظر برسد و مانند کد همزمان رفتار کند.
  5. حلقه رویداد در JavaScript چیست؟

    • حلقه رویداد مکانیسمی است که به JavaScript اجازه می دهد تا با بارگیری عملیات به هسته سیستم ، عملیات I/O را غیر مسدود کند.
  6. عملکرد ژنراتور در JavaScript چیست؟

    • یک عملکرد ژنراتور نوع خاصی از عملکرد است که می تواند مکث و از سر گرفته شود و به شما امکان می دهد دنباله ای از مقادیر را با گذشت زمان تولید کنید.
  7. تفاوت بین چیست Map وت Object در جاوا اسکریپت؟

    • Map اجازه می دهد تا کلیدهایی از هر نوع ، سفارش درج را حفظ کند ، و دارای یک size اموال ، در حالی که Object فقط به کلیدهای رشته یا نماد اجازه می دهد و سفارش را تضمین نمی کند.
  8. تفاوت بین چیست WeakMap وت Map؟

    • WeakMap در صورت عدم وجود منابع دیگر به آنها ، در صورت عدم مراجعه به کلیدهای آن اجازه می دهد Map نمی کند
  9. تفاوت بین چیست WeakSet وت Set؟

    • WeakSet در صورت عدم وجود منابع دیگر به آنها ، در صورت عدم وجود منابع زباله از مقادیر خود اجازه می دهد. Set نمی کند
  10. هدف چیست Symbol در جاوا اسکریپت؟

    • Symbol یک نوع داده ابتدایی است که برای ایجاد شناسه های منحصر به فرد برای خصوصیات شی استفاده می شود.

سوالات دستکاری دام

  1. DOM چیست؟

    • DOM (مدل شیء سند) یک رابط برنامه نویسی برای اسناد HTML و XML است. این ساختار یک سند را به عنوان درختی از اشیاء نشان می دهد.
  2. چگونه یک عنصر را با شناسه آن انتخاب می کنید؟

    • استفاده کردن document.getElementById('elementId')بشر
  3. چگونه کلاس را به یک عنصر اضافه می کنید؟

    • استفاده کردن element.classList.add('className')بشر
  4. تفاوت بین چیست innerHTML وت textContent؟

    • innerHTML محتوای HTML یک عنصر را برمی گرداند ، در حالی که textContent فقط محتوای متن را برمی گرداند.
  5. چگونه یک عنصر جدید ایجاد می کنید و آن را به DOM اضافه می کنید؟

    • استفاده کردن document.createElement('tagName') وت parentElement.appendChild(newElement)بشر
  6. تفاوت بین چیست appendChild وت insertBefore؟

    • appendChild یک گره را به عنوان آخرین فرزند یک عنصر والدین اضافه می کند ، در حالی که insertBefore یک گره را قبل از یک گره مرجع مشخص اضافه می کند.
  7. چگونه یک عنصر را از DOM حذف می کنید؟

    • استفاده کردن parentElement.removeChild(childElement)بشر
  8. تفاوت بین چیست querySelector وت getElementById؟

    • querySelector در حالی که می تواند هر عنصر را با استفاده از انتخاب کننده CSS انتخاب کند getElementById فقط عناصر را با شناسه خود انتخاب می کند.
  9. چگونه رویدادهای JavaScript را اداره می کنید؟

    • استفاده کردن addEventListener برای وصل کردن یک کنترل کننده رویداد به یک عنصر.
  10. حباب رویداد و ضبط رویداد چیست؟

    • حباب رویداد انتشار یک رویداد از عنصر هدف تا ریشه است ، در حالی که ضبط رویداد انتشار از ریشه به عنصر هدف است.

سوالات جاوا اسکریپت ناهمزمان

  1. عملکرد پاسخ به تماس چیست؟

    • یک عملکرد پاسخ به تماس ، تابعی است که به عنوان یک آرگومان به یک عملکرد دیگر منتقل می شود و پس از اتمام عمل اجرا می شود.
  2. تفاوت بین کد همزمان و ناهمزمان چیست؟

    • کد همزمان خط به خط اجرا می کند و اجرای بیشتر را تا زمانی که عملکرد فعلی کامل شود ، مسدود می کند. کد ناهمزمان به سایر عملیات اجازه می دهد تا در حالی که منتظر تکمیل عملیات فعلی هستند ، اجرا شوند.
  3. هدف چیست setTimeout؟

    • setTimeout برای اجرای یک تابع پس از تأخیر مشخص (در میلی ثانیه) استفاده می شود.
  4. شرایط مسابقه در جاوا اسکریپت چیست؟

    • یک وضعیت مسابقه زمانی اتفاق می افتد که خروجی یک برنامه به زمان وقایع غیرقابل کنترل مانند ترتیب عملیات ناهمزمان بستگی دارد.
  5. تفاوت بین چیست Promise.all وت Promise.race؟

    • Promise.all منتظر است تا همه وعده ها برطرف شود ، در حالی که Promise.race به محض رفع یا رد یکی از وعده ها ، برطرف یا رد می شود.
  6. هدف چیست async/await؟

    • async/await کار با وعده ها را با اجازه دادن به نوشتن کد ناهمزمان به سبک همزمان ساده می کند.
  7. ریزگردها در جاوا اسکریپت چیست؟

    • میکروتاسک کاری است که پس از کار فعلی و قبل از کار بعدی در حلقه رویداد اجرا می شود. نمونه ها شامل Promise تماس تلفنی
  8. تفاوت بین چیست setImmediate وت setTimeout؟

    • setImmediate یک تابع را بلافاصله پس از چرخه حلقه رویداد فعلی اجرا می کند ، در حالی که setTimeout یک عملکرد را پس از تأخیر مشخص انجام می دهد.
  9. هدف چیست process.nextTick در node.js؟

    • process.nextTick برنامه ریزی برای پاسخ به تماس برای اجرای بلافاصله پس از اتمام عملیات فعلی ، قبل از هرگونه رویداد I/O انجام می شود.
  10. تفاوت بین چیست Promise.resolve وت Promise.reject؟

    • Promise.resolve یک وعده حل شده را ایجاد می کند ، در حالی که Promise.reject یک وعده رد شده ایجاد می کند.

ES6+ دارای سوالات است

  1. توابع فلش چیست؟

    • توابع فلش یک نحو کوتاه تر برای نوشتن توابع در JavaScript است. آنها خودشان را ندارند this و همیشه ناشناس هستند.
  2. الگوی الگوی چیست؟

    • الگوی الگوهای مربوط به رشته های رشته ای است که با استفاده از backticks عبارات تعبیه شده را امکان پذیر می کند (`) ${} نحو
  3. تخریب در جاوا اسکریپت چیست؟

    • تخریب یک نحو است که به شما امکان می دهد مقادیر را از آرایه ها یا خصوصیات اشیاء به متغیرهای مجزا باز کنید.
  4. پارامترهای پیش فرض چیست؟

    • پارامترهای پیش فرض به شما امکان می دهد مقادیر پیش فرض را برای پارامترهای عملکرد در صورت عدم ارزش یا undefined گذشت
  5. ماژول های جاوا اسکریپت چیست؟

    • ماژول های JavaScript قطعات قابل استفاده مجدد از کد هستند که می توانند از یک برنامه صادر شوند و به برنامه دیگر وارد شوند.
  6. تفاوت بین چیست let وت const؟

    • let در حالی که اجازه تغییر مجدد را می دهد const نمی کند
  7. اپراتور گسترش در JavaScript چیست؟

    • اپراتور گسترش (...) اجازه می دهد تا یک تکرار در مکانهایی که چندین استدلال یا عناصر انتظار می رود گسترش یابد.
  8. پارامتر استراحت در JavaScript چیست؟

    • پارامتر استراحت (...) به شما امکان می دهد تعداد نامحدودی از استدلال ها را به عنوان یک آرایه نشان دهید.
  9. هدف چیست Symbol در جاوا اسکریپت؟

    • Symbol یک نوع داده ابتدایی است که برای ایجاد شناسه های منحصر به فرد برای خصوصیات شی استفاده می شود.
  10. تفاوت بین چیست Map وت Object در جاوا اسکریپت؟

    • Map اجازه می دهد تا کلیدهایی از هر نوع ، سفارش درج را حفظ کند ، و دارای یک size اموال ، در حالی که Object فقط به کلیدهای رشته یا نماد اجازه می دهد و سفارش را تضمین نمی کند.

چالش های برنامه نویسی جاوا اسکریپت

  1. یک تابع بنویسید تا یک رشته را معکوس کنید.

    function reverseString(str) {
        return str.split('').reverse().join('');
    }
    
  2. یک تابع بنویسید تا بررسی کنید که آیا یک رشته یک palindrome است یا خیر.

    function isPalindrome(str) {
        return str === str.split('').reverse().join('');
    }
    
  3. یک تابع بنویسید تا بیشترین تعداد را در یک آرایه پیدا کنید.

    function findLargestNumber(arr) {
        return Math.max(...arr);
    }
    
  4. یک تابع بنویسید تا نسخه های کپی را از یک آرایه حذف کنید.

    function removeDuplicates(arr) {
        return [...new Set(arr)];
    }
    
  5. یک تابع بنویسید تا یک آرایه تو در تو را صاف کنید.

    function flattenArray(arr) {
        return arr.flat(Infinity);
    }
    
  6. یک تابع بنویسید تا فاکتوریل یک شماره را پیدا کنید.

    function factorial(n) {
        if (n === 0 || n === 1) return 1;
        return n * factorial(n - 1);
    }
    
  7. یک تابع بنویسید تا بررسی کنید که آیا یک شماره اصلی است یا خیر.

    function isPrime(n) {
        if (n <= 1) return false;
        for (let i = 2; i <= Math.sqrt(n); i++) {
            if (n % i === 0) return false;
        }
        return true;
    }
    
  8. یک تابع بنویسید تا دنباله فیبوناچی را تا یک شماره معین پیدا کنید.

    function fibonacci(n) {
        const sequence = [0, 1];
        for (let i = 2; i <= n; i++) {
            sequence.push(sequence[i - 1] + sequence[i - 2]);
        }
        return sequence;
    }
    
  9. یک تابع بنویسید تا آرایه ای از اعداد را به ترتیب صعودی مرتب کنید.

    function sortArray(arr) {
        return arr.sort((a, b) => a - b);
    }
    
  10. یک تابع بنویسید تا جمع همه عناصر را در یک آرایه پیدا کنید.

    function sumArray(arr) {
        return arr.reduce((sum, num) => sum + num, 0);
    }
    
  11. یک تابع بنویسید تا میانگین همه عناصر را در یک آرایه پیدا کنید.

    function averageArray(arr) {
        return arr.reduce((sum, num) => sum + num, 0) / arr.length;
    }
    
  12. یک تابع بنویسید تا دومین عدد را در یک آرایه پیدا کنید.

    function secondLargest(arr) {
        const sortedArr = arr.sort((a, b) => b - a);
        return sortedArr[1];
    }
    
  13. یک تابع بنویسید تا تعداد واکه ها را در یک رشته حساب کنید.

    function countVowels(str) {
        const vowels = ['a', 'e', 'i', 'o', 'u'];
        return str.split('').filter(char => vowels.includes(char)).length;
    }
    
  14. یک تابع بنویسید تا حرف اول هر کلمه را در یک رشته سرمایه گذاری کنید.

    function capitalizeWords(str) {
        return str.split(' ').map(word => word[0].toUpperCase() + word.slice(1)).join(' ');
    }
    
  15. یک تابع بنویسید تا طولانی ترین کلمه را در یک رشته پیدا کنید.

    function longestWord(str) {
        return str.split(' ').reduce((longest, word) => word.length > longest.length ? word : longest, '');
    }
    
  16. یک تابع بنویسید تا بررسی کنید که آیا دو رشته آناگرام هستند یا خیر.

    function areAnagrams(str1, str2) {
        return str1.split('').sort().join('') === str2.split('').sort().join('');
    }
    
  17. یک تابع بنویسید تا تقاطع دو آرایه را پیدا کنید.

    function intersection(arr1, arr2) {
        return arr1.filter(value => arr2.includes(value));
    }
    
  18. یک تابع بنویسید تا اتحاد دو آرایه را پیدا کنید.

    function union(arr1, arr2) {
        return [...new Set([...arr1, ...arr2])];
    }
    
  19. یک تابع بنویسید تا تفاوت بین دو آرایه را پیدا کنید.

    function difference(arr1, arr2) {
        return arr1.filter(value => !arr2.includes(value));
    }
    
  20. یک تابع بنویسید تا شاخص یک عنصر خاص را در یک آرایه پیدا کنید.

    function findIndex(arr, element) {
        return arr.indexOf(element);
    }
    
  21. یک تابع بنویسید تا مقادیر Falsy را از یک آرایه حذف کنید.

    function removeFalsy(arr) {
        return arr.filter(Boolean);
    }
    
  22. یک تابع بنویسید تا بررسی کنید که آیا یک آرایه مرتب شده است یا خیر.

    function isSorted(arr) {
        return arr.every((value, index, array) => index === 0 || value >= array[index - 1]);
    }
    
  23. یک تابع بنویسید تا با تعداد مشخصی از مراحل ، یک آرایه را به سمت راست بچرخانید.

    function rotateArray(arr, steps) {
        for (let i = 0; i < steps; i++) {
            arr.unshift(arr.pop());
        }
        return arr;
    }
    
  24. یک تابع بنویسید تا اولین شخصیت غیر تکرار شونده را در یک رشته پیدا کنید.

    function firstNonRepeatingChar(str) {
        const charCount = {};
        for (const char of str) {
            charCount[char] = (charCount[char] || 0) + 1;
        }
        for (const char of str) {
            if (charCount[char] === 1) return char;
        }
        return null;
    }
    
  25. یک تابع بنویسید تا بیشترین عنصر را در یک آرایه پیدا کنید.


javascript
    function mostFrequent(arr) {
        const frequencyMap = {};
        let maxCount = 0;
        let mostFrequentElement = null;
        for (const num of arr) {
            frequencyMap[num] = (frequencyMap[num] || 0) + 1;
            if (frequencyMap[num] > maxCount) {
                maxCount = frequencyMap[num];
                most
حالت تمام صفحه را وارد کنید

از حالت تمام صفحه خارج شوید

نوشته های مشابه

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

دکمه بازگشت به بالا