JAVASCRIPT
- Understanding Hoisting in JavaScript
- Understanding Closures in JavaScript: A Complete Guide for Beginners
- Understanding Anonymous Functions in JavaScript
- JavaScript Functions: A Complete Guide
- Var vs let vs const in JavaScript
- Understanding Temporal Dead Zone (TDZ) in JavaScript
- what is surrounding state and lexical environment
- Understanding the Scope Chain in JavaScript
- How Javascript Works And Code is executed
- What is undefined and null in JavaScript?
- What are template literals in JavaScript?
- What is the difference between typeof and instanceof?
- What is a callback function?
- Explain IIFE (Immediately Invoked Function Expression).
- What is the difference between function declarations and function expressions?
- What is the arguments object in JavaScript?
- What are rest parameters and default parameters?
- What are first-class functions?
- What is the difference between call, apply, and bind?
- Explain private variables in JavaScript.
- What is an object in JavaScript?
- What are object properties and methods?
- What are getters and setters in JavaScript?
- Difference between object literal and constructor function.
- What is the difference between Object.freeze and Object.seal?
- How does Object.create() work?
- What is the DOM?
- How do you prevent default behavior of events?
- Difference between innerHTML, innerText, and textContent.
- Understanding Events in JavaScript: A Complete Guide
- How to Chain Promises in JavaScript? (Complete Guide)
- What is the difference between function scope and block scope?
- What are data attributes?
- Understanding the JavaScript Event Loop: A Complete Guide
- Explain this keyword in JavaScript.
- What is prototype and prototypal inheritance?
- How do you add or remove properties from an object?
- Difference between array and object.
- What is event delegation?
- What are array methods like map, filter, reduce?
- How do you clone an array?
- Difference between forEach and map.
- What is destructuring?
- What are template literals?
- What are modules in JavaScript?
- What is spread and rest operator?
- Difference between import and require.
- What is a promise?
- How do you remove an event listener?
- Explain async/await in JavaScript.
- Difference between HTMLCollection and NodeList.
- How do you select elements in DOM?
- Explain event delegation.
- What is a generator function?
- What is the difference between bubbling and capturing?
- How to create and remove DOM elements dynamically?
- How to traverse the DOM?
- Explain event bubbling and capturing.
- Difference between onclick and addEventListener.
- What is preventDefault and stopPropagation?
- How to handle keyboard events?
- How to handle mouse events?
- How to handle form submission using JS?
- Difference between synchronous and asynchronous code.
- Explain memoization in JavaScript.
- Explain debounce and throttle.
- Difference between shallow copy and deep copy.
- What is Proxy and Reflect in JavaScript?
- Explain Symbol in JavaScript.
What are rest parameters and default parameters?
1. Rest Parameters (...)
- Rest parameters allow a function to accept an indefinite number of arguments as an array.
- Syntax uses three dots (
...) before the parameter name.
✅ Example:
function sum(...numbers) {
return numbers.reduce((acc, num) => acc + num, 0);
}
console.log(sum(1, 2, 3)); // 6
console.log(sum(10, 20, 30, 40)); // 100
🔹 Here, numbers becomes an array of all passed arguments.
Key Points:
- Rest parameter must be the last parameter in the function.
- It collects extra arguments into a single array.
2. Default Parameters
- Default parameters allow you to give default values to function parameters, if no value or
undefinedis passed.
✅ Example:
function greet(name = "Guest") {
console.log("Hello, " + name);
}
greet("Himanshu"); // Hello, Himanshu
greet(); // Hello, Guest
🔹 If no argument is passed, name defaults to "Guest".
Key Points:
- Works only if the argument is
undefined(not if it’snull). - Can be any value: string, number, object, function.
⚡ Combined Example (Rest + Default)
function introduce(greeting = "Hi", ...names) {
console.log(greeting + ", " + names.join(", "));
}
introduce("Hello", "Ram", "Shyam", "Geeta");
// Hello, Ram, Shyam, Geeta
introduce(undefined, "Aman", "Ravi");
// Hi, Aman, Ravi
👉 So in short:
- Rest parameters → collect multiple arguments into an array.
- Default parameters → set a fallback value if argument not provided.
No comments yet! You be the first to comment.
