ধরি আমাদের একটি জটিল JSON অবজেক্ট আছে:
const obj = {
"id": "0001",
"fieldName": "sample1",
"fieldValue": "0001",
"subList": [
{ "id": 1001, "fieldName": "Sample Child 1", "fieldValue": "1001", "subList": [] },
{ "id": 1002, "fieldName": "Sample Child 2", "fieldValue": "1002", "subList": [] }
]
}
একটি ফাংশন লিখতে হবে যা অবজেক্ট এবং একটি কি-ভ্যালু পেয়ার (id) ইনপুট নিয়ে, সেই id সম্বলিত সাব-অবজেক্ট রিটার্ন করবে।
উদাহরণ
কোডটি নিচে দেওয়া হলো:
const obj = {
"id": "0001",
"fieldName": "sample1",
"fieldValue": "0001",
"subList": [
{ "id": 1001, "fieldName": "Sample Child 1", "fieldValue": "1001", "subList": [] },
{ "id": 1002, "fieldName": "Sample Child 2", "fieldValue": "1002", "subList": [] }
]
}
function searchById(searchKey, obj) {
let key = Object.keys(searchKey)[0];
let res;
if (obj[key] === searchKey[key]) {
return obj;
};
obj.subList.some(function (a) {
res = searchById(searchKey, a);
return res;
});
return res;
}
console.log(searchById({id: 1002}, obj));
আউটপুট
কনসোলে নিচের আউটপুটটি দেখাবে:
{ id: 1002, fieldName: 'Sample Child 2', fieldValue: '1002', subList: [] }