মান লিয়ে, আমাদের একটি অবজেক্টের অ্যারে আছে -
const nights = [
{ "2016-06-25": 32, "2016-06-26": 151, "2016-06-27": null },
{ "2016-06-24": null, "2016-06-25": null, "2016-06-26": null },
{ "2016-06-26": 11, "2016-06-27": 31, "2016-06-28": 31 },
];
আমাদের একটি জাভাস্ক্রিপ্ট ফাংশন লিখতে হবে যা এমন একটি অ্যারে গ্রহণ করবে এবং অবজেক্ট কী 베이সে একটি অবজেক্ট অফ অ্যারে কনস্ট্রাক্ট করবে।
অতএব, উপরের অ্যারেতে আউটপুট হবে -
const output = {
"2016-06-24": [null],
"2016-06-25": [32, null],
"2016-06-26": [151, null, 11],
"2016-06-27": [null, 31],
"2016-06-28": [31]
};
উদাহরণ
const nights = [
{ "2016-06-25": 32, "2016-06-26": 151, "2016-06-27": null },
{ "2016-06-24": null, "2016-06-25": null, "2016-06-26": null },
{ "2016-06-26": 11, "2016-06-27": 31, "2016-06-28": 31 },
];
const arrayToObject = (arr = []) => {
const res = {};
for(let i = 0; i < arr.length; i++){
const keys = Object.keys(arr[i]);
for(let j = 0; j < keys.length; j++){
if(res.hasOwnProperty(keys[j])){
res[keys[j]].push(arr[i][keys[j]]);
} else {
res[keys[j]] = [arr[i][keys[j]]];
}
}
};
return res;
};
console.log(arrayToObject(nights));
আউটপুট
কনসোলে আউটপুট হবে -
{
'2016-06-25': [32, null],
'2016-06-26': [151, null, 11],
'2016-06-27': [null, 31],
'2016-06-24': [null],
'2016-06-28': [31]
}