JS-3
JS-3
• let:
o Block-scoped: sirf us block ke andar valid hai jahan yeh declare hua hai.
o Reassign ho sakta hai: variable ki value badli ja sakti hai.
o Hoisting ke time pe initialize nahi hota.
• var:
o Function-scoped: puri function ke andar valid hai jahan yeh declare hua hai.
o Reassign ho sakta hai.
o Hoisting ke time pe undefined se initialize hota hai.
• const:
o Block-scoped: sirf us block ke andar valid hai jahan yeh declare hua hai.
o Reassign nahi ho sakta: variable ki value fix rahti hai, mutate kiya ja sakta hai
agar yeh object ya array hai.
o Hoisting ke time pe initialize nahi hota.
• Hoisting:
o JavaScript ka behavior jahan declarations ko apne scope ke top pe move kiya
jata hai.
o var declarations ko top pe move kiya jata hai aur unhe undefined se initialize
kiya jata hai.
o let aur const declarations ko bhi hoist kiya jata hai, lekin unhe initialize nahi
kiya jata.
• Callbacks:
o Ek function jo dusre function ko argument ke roop mein pass kiya jata hai.
o Yeh asynchronous operations ke complete hone par call kiya jata hai.
• ES6 Features:
o Arrow functions
o Template literals
o Destructuring assignment
o Default parameters
o Rest and spread operators
o let and const
o Classes
o Promises
o Modules
• array.map:
o Har element pe ek function apply karta hai aur results ka naya array return
karta hai.
o Original array ko modify nahi karta.
• array.filter:
o Har element pe ek test function apply karta hai aur sirf un elements ko return
karta hai jo test pass karte hain.
o Original array ko modify nahi karta.
Question 4: How to find the length of an object
Object ki length (number of properties) ko find karne ke liye Object.keys() method ka use
kiya jata hai:
javascript
Copy code
let obj = { a: 1, b: 2, c: 3 };
console.log(Object.keys(obj).length); // Output: 3
Promises JavaScript mein ek object hain jo asynchronous operation ka result represent karte
hain. Promises ke 3 states hote hain:
Question 6: Why do we use promises over callbacks and why use await and async?