- What is JavaScript, and what are its key features?
- JavaScript is a high-level, interpreted programming language that is used to make web pages interactive and dynamic. Its key features include being lightweight, versatile, and supporting functional and object-oriented programming paradigms.
- Explain the difference between “undefined” and “null” in JavaScript.
- “undefined” means a variable has been declared but has not been assigned a value, while “null” is an assignment value that represents the absence of a value.
- What is the difference between “==” and “===” in JavaScript?
- “==” checks for equality of values, while “===” checks for equality of values and data types.
- How does JavaScript handle asynchronous operations?
- JavaScript uses callbacks, promises, and async/await to handle asynchronous operations.
- Explain the concept of hoisting in JavaScript.
- Hoisting is a JavaScript mechanism where variables and function declarations are moved to the top of their containing scope during the compilation phase.
- What are the different data types in JavaScript?
- JavaScript has six primitive data types: string, number, boolean, null, undefined, and symbol; and one complex data type, which is object.
- How can you handle errors in JavaScript?
- Errors in JavaScript can be handled using try-catch blocks, throwing custom errors, and using the “finally” block to execute code after try and catch regardless of the result.
- What is the use of the “this” keyword in JavaScript?
- The “this” keyword refers to the object it belongs to and is used to access object properties and methods within the object.
- Explain the concept of closures in JavaScript.
- Closures are functions that have access to the outer function’s scope even after the outer function has finished executing.
- What are the different ways to create an object in JavaScript?
- Objects in JavaScript can be created using object literals, constructor functions, and the “class” keyword introduced in ES6.