user.getName?.();The function is called only if
getName exists and is callable.Common Use: Very useful when working with API responses where some properties may be missing.
37. What is nullish coalescing (??)
The nullish coalescing operator returns the right-hand value when the left-hand value is null or undefined.
Example:
const username = null;
console.log(username ?? "Guest");
Output: Guest
Important Difference From ||
|| considers all falsy values: console.log(0 || 100); → 100?? only checks null and undefined: console.log(0 ?? 100); → 0 Interview Tip: Use
?? when 0, false, or "" are valid values that should not be replaced.38. What are object methods?
An object method is a function stored as a property of an object.
Example:
const user = {
name: "Deepak",
greet() {
console.log(`Hello ${this.name}`);
}
};
user.greet();Output: Hello Deepak
Another Example:
const calculator = {
add(a, b) { return a + b; },
multiply(a, b) { return a * b; }
};
console.log(calculator.add(10, 20));39. What is method chaining?
Method chaining means calling multiple methods one after another on the same object or result.
Example:
const result = "javascript"
.toUpperCase()
.split("")
.reverse()
.join("");
console.log(result);
Output: TPIRCSAVAJ
Array Example:
const result = [1, 2, 3, 4, 5]
.filter(num => num % 2 === 0)
.map(num => num * 10);
console.log(result);
Output: [20,40]
Common Uses: Array processing, String manipulation, Promise chains, Libraries such as jQuery
40. What is object freezing and sealing?
JavaScript provides
Object.freeze() and Object.seal() to restrict modifications to objects.Object.freeze()
Prevents: Adding properties, Removing properties, Changing existing properties
const user = { name: "Deepak", age: 25 };
Object.freeze(user);
user.age = 30;
user.city = "Pune";
console.log(user); // unchangedObject.seal()
Prevents: Adding properties, Removing properties
But existing properties can still be modified.
const user = { name: "Deepak", age: 25 };
Object.seal(user);
user.age = 30;
console.log(user.age); // 30Key Difference:
Object.freeze(): Cannot add, delete, or modify properties
Object.seal(): Cannot add or delete properties, but can modify existing ones
🔥 Interview Tip: Both methods are shallow — nested objects can still be modified unless they are separately frozen/sealed.
❤️ Double Tap For Part 5