🚀 راهنمای نهایی: سؤالات و پاسخ های مصاحبه JavaScript (نسخه 2025) – قسمت 1

جاوا اسکریپت یک است باید زبان برای توسعه دهندگان جلو و پشتی. اگر در حال آماده سازی هستید مصاحبه های جاوا اسکریپت، این راهنما پوشش می دهد سوالات معمولاً پرسیده شده با پاسخ های دقیق برای کمک به شما در موفقیت 📌
بیایید شیرجه بزنیم! 🔥
🟢 سوالات اساسی مصاحبه JavaScript
1. JavaScript چیست؟
جاوا اسکریپت یک است زبان برنامه نویسی سطح بالا و تفسیر شده برای ایجاد صفحات وب تعاملی استفاده می شود. پشتیبانی می کند الگوی برنامه نویسی رویداد ، کاربردی و شی گرابشر
2. انواع مختلف داده در JavaScript چیست؟
جاوا اسکریپت دارد بدوی وت غیر حساس انواع داده ها:
-
بدوی:
String
باNumber
باBoolean
باNull
باUndefined
باSymbol
باBigInt
-
غیر حساس:
Object
باArray
باFunction
3. تفاوت بین چیست let
با const
وت var
؟
کلمه کلیدی | دامنه | قابل تشخیص؟ | بلند شده؟ |
---|---|---|---|
var |
دارای عملکردی | ✅ بله | ✅ بله (اما تعریف نشده) |
let |
دارای بلوک | ✅ بله | ❌ نه |
const |
دارای بلوک | ❌ نه | ❌ نه |
4. الگوی الگوی چیست؟
الگوی الگوی اجازه می دهد تا عبارات جاسازی شده در رشته ها را با استفاده از پشتی.
const name = "Atul";
console.log(`Hello, ${name}!`); // Hello, Atul!
5. تفاوت بین چیست ==
وت ===
؟
-
==
(برابری انتزاعی): قبل از مقایسه ، عملیات ها را به همان نوع تبدیل می کند. -
===
(برابری دقیق): مقایسه می کند هر دو مقدار و نوعبشر
console.log(5 == "5"); // true (type conversion)
console.log(5 === "5"); // false (different types)
🟡 سوالات مصاحبه متوسط جاوا اسکریپت
6. تعطیلی در جاوا اسکریپت را توضیح دهید.
بسته شدن تابعی است که دسترسی به آن را حفظ می کند دامنه عملکرد بیرونی حتی پس از پایان عملکرد بیرونی.
function outer() {
let count = 0;
return function inner() {
count++;
console.log(count);
};
}
const counter = outer();
counter(); // 1
counter(); // 2
7. تفاوت بین برنامه نویسی همزمان و ناهمزمان چیست؟
- همگام: کد به طور متوالی اجرا می شود و اجرای آن را مسدود می کند.
- غیر همزمان: کد در پس زمینه اجرا می شود (به عنوان مثال ، تماس تلفنی ، وعده ها ، Async/Ayit).
8 8 this
کلمه کلیدی در جاوا اسکریپت؟
- به شیئی که عملکرد را اجرا می کند اشاره دارد.
- مقدار آن به جایی که استفاده می شود بستگی دارد:
const obj = {
name: "Atul",
greet() {
console.log(this.name);
},
};
obj.greet(); // "Atul"
9. هیئت رویداد در JavaScript چیست؟
نمایندگی رویداد تکنیکی است که در آن عنصر والدین رویدادها را برای آن انجام می دهد عناصر کودک، بهبود عملکرد.
document.querySelector("ul").addEventListener("click", (e) => {
if (e.target.tagName === "LI") {
console.log(e.target.textContent);
}
});
10. وعده های موجود در جاوا اسکریپت چیست؟
بوها وعده مقداری را نشان می دهد که ممکن است در دسترس باشد اکنون ، بعداً ، یا هرگزبشر
const fetchData = new Promise((resolve, reject) => {
setTimeout(() => resolve("Data received"), 2000);
});
fetchData.then(console.log); // "Data received" after 2 seconds
🔴 سوالات مصاحبه پیشرفته JavaScript
11. تفاوت بین چیست call
با apply
وت bind
؟
روش | استفاده |
---|---|
call() |
عملکردی را با یک خاص فراخوانی می کند this ارزش و استدلال ها به صورت جداگانه تصویب شدند. |
apply() |
عملکردی را با یک خاص فراخوانی می کند this ارزش و استدلال به عنوان یک آرایه تصویب شد. |
bind() |
یک عملکرد جدید را با یک محدود باز می گرداند this ارزش |
مثال:
const obj = { name: "Atul" };
function greet(greeting) {
console.log(`${greeting}, ${this.name}`);
}
greet.call(obj, "Hello"); // "Hello, Atul"
greet.apply(obj, ["Hi"]); // "Hi, Atul"
const boundFunc = greet.bind(obj);
boundFunc("Hey"); // "Hey, Atul"
12. حلقه رویداد را در JavaScript توضیح دهید.
حلقه رویداد به JavaScript اجازه می دهد تا با قرار دادن کارها در صف های مختلف و اجرای آنها در هنگام خالی بودن پشته ، عملیات ناهمزمان را انجام دهد.
13 setTimeout
وت setInterval
؟
-
setTimeout()
: کد را پس از تأخیر اجرا می کند. -
setInterval()
: اجرای را در یک بازه ثابت تکرار می کند.
setTimeout(() => console.log("Hello after 2s"), 2000);
const interval = setInterval(() => console.log("Repeating every 1s"), 1000);
clearInterval(interval); // Stops interval execution
14. در JavaScript چه عواملی در حال ضرب و شتم است؟
- تسکین دهنده: اجرای عملکرد تا زمان وقوع مکث.
- زباله: تضمین می کند که یک تابع حداکثر یک بار در یک دوره معین انجام شود.
مثال (debounce):
function debounce(func, delay) {
let timeout;
return function (...args) {
clearTimeout(timeout);
timeout = setTimeout(() => func(...args), delay);
};
}
15. تفاوت بین کپی کم عمق و عمیق چیست؟
- کپی کم عمق: فقط منابع مربوط به اشیاء تو در تو را کپی می کند.
- کپی عمیق: یک نسخه کاملاً مستقل ایجاد می کند.
مثال:
let obj1 = { a: 1, b: { c: 2 } };
let shallowCopy = { ...obj1 };
let deepCopy = JSON.parse(JSON.stringify(obj1));
🎯 افکار نهایی
تسلط بر اینها سوالات مصاحبه JavaScript به شما کمک می کند مصاحبه های توسعه دهنده جلوی و تمام پشته را ترک کنید! تمرین خود را ادامه دهید و با جدیدترین ویژگی های JS به روز شوید. 🚀
questions سوالات بیشتری دارید؟ آنها را در نظرات رها کنید! 👇