41. How do arrays work in JavaScript?
An array is an ordered collection of values. JS arrays can hold different data types and use zero-based indexing.
Example:
const items = ["Apple", 25, true];
console.log(items[0]); // Apple
console.log(items.length); // 3
Important Points:
• Index starts at 0
• Arrays are objects in JavaScript
• Arrays can grow or shrink dynamically
• Arrays can contain mixed data types
42. What is the difference between map() and forEach()?
Both iterate over an array, but used differently.
map()
Creates and returns a new array.
const numbers = [1, 2, 3];
const doubled = numbers.map(num => num * 2); // [2, 4, 6]
forEach()
Executes a function for each element but does not return a new array.
numbers.forEach(num => console.log(num * 2));
Key Difference:
• map(): Returns a new array. Used for transformation. Can be chained.
• forEach(): Returns undefined. Used for side effects.
43. What is filter()?
Creates a new array with elements that pass a condition. Original array is not modified.
Example:
const numbers = [1, 2, 3, 4, 5];
const evenNumbers = numbers.filter(num => num % 2 === 0); // [2, 4]
44. What is reduce()?
Processes an array and produces a single accumulated value.
Example:
const numbers = [10, 20, 30];
const total = numbers.reduce((sum, num) => sum + num, 0); // 60
Common Uses: Calculate totals, averages, count items, group data, build objects.
Interview Tip: Understand the accumulator and current value arguments.
45. What is find()?
Returns the first element that satisfies a condition. Returns undefined if none match.
Example:
const numbers = [10, 20, 30, 40];
const result = numbers.find(num => num > 20); // 30
find() vs filter(): find = first match, filter = all matches.
46. What is findIndex()?
Returns the index of the first element that satisfies a condition. Returns -1 if none match.
Example:
const numbers = [10, 20, 30, 40];
const index = numbers.findIndex(num => num > 20); // 2
47. What is some()?
Checks if at least one element satisfies a condition. Returns Boolean.
Example:
const numbers = [1, 3, 5, 8];
const result = numbers.some(num => num % 2 === 0); // true
48. What is every()?
Checks if all elements satisfy a condition. Returns Boolean.
Example:
const numbers = [2, 4, 6, 8];
const result = numbers.every(num => num % 2 === 0); // true
some() vs every(): some = at least one, every = all.
49. What is the difference between slice() and splice()?
slice()
Returns a portion without modifying the original.
const numbers = [1, 2, 3, 4, 5];
const result = numbers.slice(1, 4); // [2, 3, 4]
splice()
Adds, removes, or replaces elements and modifies the original.
const numbers = [1, 2, 3, 4, 5];
numbers.splice(1, 2); // removes 2 elements at index 1
console.log(numbers); // [1, 4, 5]