ইন ES6 / 2015 আপনি ভালো একটি বস্তু মাধ্যেমে লুপ করতে পারেন: (ব্যবহার তীর ফাংশন )
Object.keys(myObj).forEach(key => {
console.log(key); // the name of the current key.
console.log(myObj[key]); // the value of the current key.
});
jsbin
ইন ES7 / 2016 আপনি ব্যবহার করতে পারেন Object.entries
পরিবর্তে Object.keys
এই মত একটি বস্তু দিয়ে লুপ:
Object.entries(myObj).forEach(([key, val]) => {
console.log(key); // the name of the current key.
console.log(val); // the value of the current key.
});
উপরেরগুলি ওয়ান-লাইনার হিসাবেও কাজ করবে :
Object.entries(myObj).forEach(([key, val]) => console.log(key, val));
jsbin
আপনি যদি নেস্টেড অবজেক্টগুলিও লুপ করতে চান তবে আপনি পুনরাবৃত্তি ফাংশন (ES6) ব্যবহার করতে পারেন :
const loopNestedObj = obj => {
Object.keys(obj).forEach(key => {
if (obj[key] && typeof obj[key] === "object") loopNestedObj(obj[key]); // recurse.
else console.log(key, obj[key]); // or do something with key and val.
});
};
jsbin
উপরে ফাংশন হিসাবে একই, কিন্তু এর পরিবর্তে ES7 সহ :Object.entries()
Object.keys()
const loopNestedObj = obj => {
Object.entries(obj).forEach(([key, val]) => {
if (val && typeof val === "object") loopNestedObj(val); // recurse.
else console.log(key, val); // or do something with key and val.
});
};
এখানে আমরা নেস্টেড অবজেক্টগুলির মাধ্যমে লুপগুলি মান পরিবর্তন করি এবং Object.entries()
একসাথে Object.fromEntries()
( ES10 / 2019 ) ব্যবহার করে একটি নতুন অবজেক্ট ফিরিয়ে দেব :
const loopNestedObj = obj =>
Object.fromEntries(
Object.entries(obj).map(([key, val]) => {
if (val && typeof val === "object") [key, loopNestedObj(val)]; // recurse
else [key, updateMyVal(val)]; // or do something with key and val.
})
);