๐ JavaScript Interview Questions with Answers โ Part 3
21. What is an array in JavaScript?
An array is a special object used to store multiple values in a single variable.
Example:
const fruits = ["Apple", "Banana", "Mango"];
Access Elements:
console.log(fruits[0]); // Apple
Features:
โข Ordered collection
โข Zero-based indexing
โข Can store mixed data types
Example:
const data = ["Deepak", 25, true];
22. How do you add/remove elements from an array?
Add Elements
push() โ Add at end
const arr = [1, 2];
arr.push(3);
console.log(arr);
unshift() โ Add at beginning
arr.unshift(0);
Remove Elements
pop() โ Remove from end
arr.pop();
shift() โ Remove from beginning
arr.shift();
Example:
const numbers = [1, 2, 3];
numbers.push(4);
numbers.pop();
console.log(numbers);
23. What is the difference between push(), pop(), shift(), unshift()?
push() โ Add element at end
pop() โ Remove element from end
shift() โ Remove element from start
unshift() โ Add element at start
Example:
const arr = [1, 2];
arr.push(3);
arr.unshift(0);
console.log(arr);
arr.pop();
arr.shift();
console.log(arr);
Output:
[0][1][2][3]
24. What is map(), filter(), and reduce()?
These are important array methods used in functional programming.
map()
Creates a new array by transforming elements.
const nums = [1, 2, 3];
const doubled = nums.map(num => num * 2);
console.log(doubled);
Output:
[2][4][6]
filter()
Returns elements matching a condition.
const nums = [1, 2, 3, 4];
const even = nums.filter(num => num % 2 === 0);
console.log(even);
Output:
[2][4]
reduce()
Reduces array to a single value.
const nums = [1, 2, 3];
const sum = nums.reduce((total, num) => total + num, 0);
console.log(sum);
Output:
6
25. How do you remove duplicates from an array?
Using Set
const nums = [1, 2, 2, 3, 4, 4];
const unique = [...new Set(nums)];
console.log(unique);
Output:
[1][2][3][4]
Why Set?
A Set stores only unique values.
Alternative Using filter()
const arr = [1, 2, 2, 3];
const unique = arr.filter((item, index) =>
arr.indexOf(item) === index
);
console.log(unique);
26. How do you flat / flatten an array?
Flattening means converting nested arrays into a single array.
Using flat()
const arr = [1, [2, 3], [4, 5]];
console.log(arr.flat());
Output:
[1][2][3][4][5]
Deep Flatten:
const arr = [1, [2, [3, 4]]];
console.log(arr.flat(Infinity));
Using reduce()
const arr = [[1, 2], [3, 4]];
const flat = arr.reduce((acc, val) => acc.concat(val), []);
console.log(flat);
27. What is an object in JavaScript?
An object is a collection of key-value pairs.
Example:
const person = {
name: "Deepak",
age: 25,
city: "Oslo"
};
Access Properties:
console.log(person.name);
Objects Can Store:
โข Strings
โข Numbers
โข Arrays
โข Functions
โข Other objects
28. What is the difference between dot and bracket notation?
Dot Notation
console.log(person.name);
Bracket Notation
console.log(person["name"]);
Dot Notation
โข Simple syntax
โข Faster to write
Bracket Notation
โข Dynamic keys supported
โข Useful for spaces/special chars
Example:
const obj = {
"first name": "Deepak"
};
console.log(obj["first name"]);
29. How do you merge two objects?
Using Spread Operator
const obj1 = {a: 1};
const obj2 = {b: 2};
const merged = {...obj1,...obj2};
console.log(merged);
Output:
{a: 1, b: 2}
Using Object.assign()
const merged = Object.assign({}, obj1, obj2);
Important:
If duplicate keys exist, later values overwrite earlier ones.
30. How do you deep clone an object?
Deep cloning creates a completely independent copy of an object.
Using structuredClone()
const obj = {
name: "Deepak",
address: {
city: "Oslo"
}
};
const clone = structuredClone(obj);
Using JSON Method
const clone = JSON.parse(JSON.stringify(obj));
Double Tap โค๏ธ For Part-4
21. What is an array in JavaScript?
An array is a special object used to store multiple values in a single variable.
Example:
const fruits = ["Apple", "Banana", "Mango"];
Access Elements:
console.log(fruits[0]); // Apple
Features:
โข Ordered collection
โข Zero-based indexing
โข Can store mixed data types
Example:
const data = ["Deepak", 25, true];
22. How do you add/remove elements from an array?
Add Elements
push() โ Add at end
const arr = [1, 2];
arr.push(3);
console.log(arr);
unshift() โ Add at beginning
arr.unshift(0);
Remove Elements
pop() โ Remove from end
arr.pop();
shift() โ Remove from beginning
arr.shift();
Example:
const numbers = [1, 2, 3];
numbers.push(4);
numbers.pop();
console.log(numbers);
23. What is the difference between push(), pop(), shift(), unshift()?
push() โ Add element at end
pop() โ Remove element from end
shift() โ Remove element from start
unshift() โ Add element at start
Example:
const arr = [1, 2];
arr.push(3);
arr.unshift(0);
console.log(arr);
arr.pop();
arr.shift();
console.log(arr);
Output:
[0][1][2][3]
24. What is map(), filter(), and reduce()?
These are important array methods used in functional programming.
map()
Creates a new array by transforming elements.
const nums = [1, 2, 3];
const doubled = nums.map(num => num * 2);
console.log(doubled);
Output:
[2][4][6]
filter()
Returns elements matching a condition.
const nums = [1, 2, 3, 4];
const even = nums.filter(num => num % 2 === 0);
console.log(even);
Output:
[2][4]
reduce()
Reduces array to a single value.
const nums = [1, 2, 3];
const sum = nums.reduce((total, num) => total + num, 0);
console.log(sum);
Output:
6
25. How do you remove duplicates from an array?
Using Set
const nums = [1, 2, 2, 3, 4, 4];
const unique = [...new Set(nums)];
console.log(unique);
Output:
[1][2][3][4]
Why Set?
A Set stores only unique values.
Alternative Using filter()
const arr = [1, 2, 2, 3];
const unique = arr.filter((item, index) =>
arr.indexOf(item) === index
);
console.log(unique);
26. How do you flat / flatten an array?
Flattening means converting nested arrays into a single array.
Using flat()
const arr = [1, [2, 3], [4, 5]];
console.log(arr.flat());
Output:
[1][2][3][4][5]
Deep Flatten:
const arr = [1, [2, [3, 4]]];
console.log(arr.flat(Infinity));
Using reduce()
const arr = [[1, 2], [3, 4]];
const flat = arr.reduce((acc, val) => acc.concat(val), []);
console.log(flat);
27. What is an object in JavaScript?
An object is a collection of key-value pairs.
Example:
const person = {
name: "Deepak",
age: 25,
city: "Oslo"
};
Access Properties:
console.log(person.name);
Objects Can Store:
โข Strings
โข Numbers
โข Arrays
โข Functions
โข Other objects
28. What is the difference between dot and bracket notation?
Dot Notation
console.log(person.name);
Bracket Notation
console.log(person["name"]);
Dot Notation
โข Simple syntax
โข Faster to write
Bracket Notation
โข Dynamic keys supported
โข Useful for spaces/special chars
Example:
const obj = {
"first name": "Deepak"
};
console.log(obj["first name"]);
29. How do you merge two objects?
Using Spread Operator
const obj1 = {a: 1};
const obj2 = {b: 2};
const merged = {...obj1,...obj2};
console.log(merged);
Output:
{a: 1, b: 2}
Using Object.assign()
const merged = Object.assign({}, obj1, obj2);
Important:
If duplicate keys exist, later values overwrite earlier ones.
30. How do you deep clone an object?
Deep cloning creates a completely independent copy of an object.
Using structuredClone()
const obj = {
name: "Deepak",
address: {
city: "Oslo"
}
};
const clone = structuredClone(obj);
Using JSON Method
const clone = JSON.parse(JSON.stringify(obj));
Double Tap โค๏ธ For Part-4
โค7
๐๐ฅ๐๐ ๐๐ฎ๐๐ฎ ๐๐ป๐ฎ๐น๐๐๐ถ๐ฐ๐ ๐๐ฒ๐ฟ๐๐ถ๐ณ๐ถ๐ฐ๐ฎ๐๐ถ๐ผ๐ป ๐ฏ๐ ๐ ๐ถ๐ฐ๐ฟ๐ผ๐๐ผ๐ณ๐ & ๐๐ถ๐ป๐ธ๐ฒ๐ฑ๐๐ป! ๐
Stop scrolling! This is your chance to get certified by two of the biggest names in techโ ๐ Level up your Data Skills for FREE!
โ What you get:
โข Official Microsoft & LinkedIn Certification
โข High-demand Data Analytics skills
โข Perfect for your Resume/LinkedIn profile
๐๐ป๐ฟ๐ผ๐น๐น ๐๐ผ๐ฟ ๐๐ฅ๐๐๐:-
https://pdlink.in/4ubzzcC
๐Don't miss out on this career upgrade. Limited time offer!
Stop scrolling! This is your chance to get certified by two of the biggest names in techโ ๐ Level up your Data Skills for FREE!
โ What you get:
โข Official Microsoft & LinkedIn Certification
โข High-demand Data Analytics skills
โข Perfect for your Resume/LinkedIn profile
๐๐ป๐ฟ๐ผ๐น๐น ๐๐ผ๐ฟ ๐๐ฅ๐๐๐:-
https://pdlink.in/4ubzzcC
๐Don't miss out on this career upgrade. Limited time offer!
โค1
๐ JavaScript Interview Questions with Answers โ Part 4
31. What is if/else and switch?
Both are conditional statements used to make decisions in JavaScript.
if/else
Executes code based on conditions.
switch
Used when checking multiple possible values.
Difference:
if/else - Better for conditions/ranges, Flexible
switch - Better for exact values, Cleaner for many cases
32. What is the difference between for, for...in, and for...of?
for
Traditional loop.
for...in
Used for iterating object keys.
for...of
Used for iterable values like arrays.
Key Difference:
Loop - Best For
for - Full control
for...in - Object properties
for...of - Array values
33. What is the while and do-while loop?
Both loops execute code repeatedly while a condition is true.
while Loop
Condition checked before execution.
do-while Loop
Runs at least once before checking condition.
Difference:
while - Condition first, May run zero times
do-while - Code first, Runs at least once
34. What is the ternary operator?
The ternary operator is a shorthand for if/else.
Syntax:
condition? trueValue : falseValue
Example:
Benefits:
โข Shorter code
โข Cleaner simple conditions
35. What is short-circuit evaluation?
JavaScript stops evaluating expressions as soon as the result is known.
Using &&
Returns first falsy value.
Output:
false
Using ||
Returns first truthy value.
Output:
Default
Practical Example:
36. What is the difference between break and continue?
Keyword - Purpose
break - Stops the loop completely
continue - Skips current iteration
break Example
Output:
1
2
continue Example
Output:
1
2
4
5
37. How do you iterate over an array or object?
Array Iteration
Using forEach()
Object Iteration
Using for...in
Using Object.keys()
38. How do you implement recursion?
Recursion is when a function calls itself until a stopping condition is met.
Example: Factorial
Output:
120
Important Parts:
1. Base condition
2. Recursive call
Without a base condition โ infinite recursion.
31. What is if/else and switch?
Both are conditional statements used to make decisions in JavaScript.
if/else
Executes code based on conditions.
let age = 18;
if (age >= 18) {
console.log("Adult");
} else {
console.log("Minor");
}
switch
Used when checking multiple possible values.
let day = 2;
switch(day) {
case 1:
console.log("Monday");
break;
case 2:
console.log("Tuesday");
break;
default:
console.log("Invalid Day");
}
Difference:
if/else - Better for conditions/ranges, Flexible
switch - Better for exact values, Cleaner for many cases
32. What is the difference between for, for...in, and for...of?
for
Traditional loop.
for (let i = 0; i < 3; i++) {
console.log(i);
}for...in
Used for iterating object keys.
const person = {
name: "Deepak",
age: 25
};
for (let key in person) {
console.log(key);
}for...of
Used for iterable values like arrays.
const nums = [1, 2, 3];
for (let num of nums) {
console.log(num);
}
Key Difference:
Loop - Best For
for - Full control
for...in - Object properties
for...of - Array values
33. What is the while and do-while loop?
Both loops execute code repeatedly while a condition is true.
while Loop
Condition checked before execution.
let i = 1;
while (i <= 3) {
console.log(i);
i++;
}
do-while Loop
Runs at least once before checking condition.
let i = 1;
do {
console.log(i);
i++;
} while(i <= 3);
Difference:
while - Condition first, May run zero times
do-while - Code first, Runs at least once
34. What is the ternary operator?
The ternary operator is a shorthand for if/else.
Syntax:
condition? trueValue : falseValue
Example:
let age = 20;
let result = age >= 18 ? "Adult" : "Minor";
console.log(result);
Benefits:
โข Shorter code
โข Cleaner simple conditions
35. What is short-circuit evaluation?
JavaScript stops evaluating expressions as soon as the result is known.
Using &&
Returns first falsy value.
console.log(false && "Hello");
Output:
false
Using ||
Returns first truthy value.
console.log("" || "Default");Output:
Default
Practical Example:
let username = "";
let displayName = username || "Guest";
console.log(displayName);
36. What is the difference between break and continue?
Keyword - Purpose
break - Stops the loop completely
continue - Skips current iteration
break Example
for (let i = 1; i <= 5; i++) {
if (i === 3) {
break;
}
console.log(i);
}Output:
1
2
continue Example
for (let i = 1; i <= 5; i++) {
if (i === 3) {
continue;
}
console.log(i);
}Output:
1
2
4
5
37. How do you iterate over an array or object?
Array Iteration
Using forEach()
const nums = [1, 2, 3];
nums.forEach(num => {
console.log(num);
});
Object Iteration
Using for...in
const person = {
name: "Deepak",
age: 25
};
for (let key in person) {
console.log(key, person[key]);
}Using Object.keys()
Object.keys(person).forEach(key => {
console.log(key);
});38. How do you implement recursion?
Recursion is when a function calls itself until a stopping condition is met.
Example: Factorial
function factorial(n) {
if (n === 1) {
return 1;
}
return n * factorial(n - 1);
}
console.log(factorial(5));Output:
120
Important Parts:
1. Base condition
2. Recursive call
Without a base condition โ infinite recursion.
โค2
39. When would you use for vs forEach()?
for Loop vs forEach()
for - More control, Can use break/continue, Faster in heavy loops
forEach() - Cleaner syntax, Cannot stop early, Better readability
for Example
forEach() Example
Interview Tip:
Use forEach() for readability and for when more control is needed.
40. How do you handle early exits from loops?
Using break
Using return Inside Functions
Important:
forEach() does not support break directly.
Use:
โข for
โข for...of
โข some()
โข every()
for early exits.
Double Tap โค๏ธ For Part-5
for Loop vs forEach()
for - More control, Can use break/continue, Faster in heavy loops
forEach() - Cleaner syntax, Cannot stop early, Better readability
for Example
for (let i = 0; i < 3; i++) {
console.log(i);
}forEach() Example
[1, 2, 3].forEach(num => {
console.log(num);
});Interview Tip:
Use forEach() for readability and for when more control is needed.
40. How do you handle early exits from loops?
Using break
for (let i = 1; i <= 5; i++) {
if (i === 3) {
break;
}
console.log(i);
}Using return Inside Functions
function test() {
for (let i = 1; i <= 5; i++) {
if (i === 3) {
return;
}
console.log(i);
}
}
test();Important:
forEach() does not support break directly.
Use:
โข for
โข for...of
โข some()
โข every()
for early exits.
Double Tap โค๏ธ For Part-5
โค10๐1
๐ฃ๐ฎ๐ ๐๐ณ๐๐ฒ๐ฟ ๐ฃ๐น๐ฎ๐ฐ๐ฒ๐บ๐ฒ๐ป๐ ๐ฃ๐ฟ๐ผ๐ด๐ฟ๐ฎ๐บ ๐ง๐ผ ๐๐ฒ๐ฐ๐ผ๐บ๐ฒ ๐ฎ ๐๐ผ๐ฏ-๐ฅ๐ฒ๐ฎ๐ฑ๐ ๐ฆ๐ผ๐ณ๐๐๐ฎ๐ฟ๐ฒ ๐๐ฒ๐๐ฒ๐น๐ผ๐ฝ๐ฒ๐ฟ๐ฅ
No upfront fees. Learn first, pay only after you get placed! ๐ผโจ
๐ What Youโll Get:
โ Full Stack Development Training
โ GenAI + Real Industry Projects
โ Live Classes & 1:1 Mentorship
โ Mock Interviews & Resume Support
โ 500+ Hiring Partners
โ Average Package: 7.4 LPA
๐ฏ Ideal for:- Freshers , College Students, Career Switchers & Anyone looking to enter Tech
๐ป Learn In-Demand Skills & Build Your Dream Tech Career!
๐๐๐ ๐ข๐ฌ๐ญ๐๐ซ ๐๐จ๐ฐ ๐:-
https://pdlink.in/42WOE5H
Hurry! Limited seats are available.๐โโ๏ธ
No upfront fees. Learn first, pay only after you get placed! ๐ผโจ
๐ What Youโll Get:
โ Full Stack Development Training
โ GenAI + Real Industry Projects
โ Live Classes & 1:1 Mentorship
โ Mock Interviews & Resume Support
โ 500+ Hiring Partners
โ Average Package: 7.4 LPA
๐ฏ Ideal for:- Freshers , College Students, Career Switchers & Anyone looking to enter Tech
๐ป Learn In-Demand Skills & Build Your Dream Tech Career!
๐๐๐ ๐ข๐ฌ๐ญ๐๐ซ ๐๐จ๐ฐ ๐:-
https://pdlink.in/42WOE5H
Hurry! Limited seats are available.๐โโ๏ธ
โค3๐1
๐ Frontend Development
โ๐ Learn HTML
โ๐ Learn CSS
โ๐ Learn JavaScript
โ๐ Learn React
โ๐ Learn Redux
โ๐ Learn TypeScript
๐ Backend Development
โ๐ Learn Node.js
โ๐ Learn Express.js
โ๐ Learn MongoDB
โ๐ RESTful APIs
โ๐ Authentication (JWT, OAuth)
โ๐ GraphQL
โ๐ SQL (e.g., MySQL, PostgreSQL)
โ๐ Database Design
Web Development Best Resources
โ๐ topmate.io/coding/930165
ENJOY LEARNING ๐๐
โ๐ Learn HTML
โ๐ Learn CSS
โ๐ Learn JavaScript
โ๐ Learn React
โ๐ Learn Redux
โ๐ Learn TypeScript
๐ Backend Development
โ๐ Learn Node.js
โ๐ Learn Express.js
โ๐ Learn MongoDB
โ๐ RESTful APIs
โ๐ Authentication (JWT, OAuth)
โ๐ GraphQL
โ๐ SQL (e.g., MySQL, PostgreSQL)
โ๐ Database Design
Web Development Best Resources
โ๐ topmate.io/coding/930165
ENJOY LEARNING ๐๐
โค5
๐๐ฅ๐๐ ๐ข๐ป๐น๐ถ๐ป๐ฒ ๐ ๐ฎ๐๐๐ฒ๐ฟ๐ฐ๐น๐ฎ๐๐ ๐ข๐ป ๐๐ฎ๐๐ฎ ๐๐ป๐ฎ๐น๐๐๐ถ๐ฐ๐ ( ๐๐๐๐ถ๐ป๐ฒ๐๐ ๐๐ป๐ฎ๐น๐๐๐ถ๐ฐ๐)๐
Learn the Latest 5 Analytics Tools in 2026
Learn Essential skills to stay competitive in the evolving job market
Eligibility :- Students ,Graduates & Working Professionals
๐ฅ๐ฒ๐ด๐ถ๐๐๐ฒ๐ฟ ๐๐ผ๐ฟ ๐๐ฅ๐๐ ๐:-
https://pdlink.in/4tFlovr
(Limited Slots ..HurryUp๐โโ๏ธ )
๐๐๐ญ๐ & ๐๐ข๐ฆ๐:- 20th May 2026, at 7 PM
Learn the Latest 5 Analytics Tools in 2026
Learn Essential skills to stay competitive in the evolving job market
Eligibility :- Students ,Graduates & Working Professionals
๐ฅ๐ฒ๐ด๐ถ๐๐๐ฒ๐ฟ ๐๐ผ๐ฟ ๐๐ฅ๐๐ ๐:-
https://pdlink.in/4tFlovr
(Limited Slots ..HurryUp๐โโ๏ธ )
๐๐๐ญ๐ & ๐๐ข๐ฆ๐:- 20th May 2026, at 7 PM