Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> JavaScript

JavaScript में प्रॉपर्टीज के आधार पर ऑब्जेक्ट्स को अलग करना


मान लीजिए हमारे पास ऐसा ऑब्जेक्ट है:

const obj = {    0: { "time": 1, "day": 1, },    1: { "time": 2, "day": 1, },    2: { "time": 3, "day": 1, },    3: { "time": 1, "day": 2, },    4: { "time": 2, "day": 2, },    5: { "time": 3, "day": 2, } };

हमें एक जावास्क्रिप्ट फंक्शन लिखना है जो ऐसा ऑब्जेक्ट ले और सभी की-वैल्यू पेयर्स को अलग-अलग सब-ऑब्जेक्ट्स में ग्रुप करे जिनमें day की के लिए समान मान हो।

आउटपुट

उपरोक्त ऑब्जेक्ट के लिए आउटपुट होना चाहिए:

const output = { '1': { '1': { time: 1, day: 1 }, '2': { time: 2, day: 1 }, '3': { time: 3, day: 1 } }, '2': { '1': { time: 1, day: 2 }, '2': { time: 2, day: 2 }, '3': { time: 3, day: 2 } } }

उदाहरण

इसके लिए कोड:

const obj = {    0: { "time": 1, "day": 1, },    1: { "time": 2, "day": 1, },    2: { "time": 3, "day": 1, },    3: { "time": 1, "day": 2, },    4: { "time": 2, "day": 2, },    5: { "time": 3, "day": 2, } }; const groupObject = obj => {    let res = {};    res = Object.values(obj).reduce((acc, val) => {       if(acc[val['day']] === undefined){          acc[val['day']] ={};       };       acc[val['day']][val['time']] = val;       return acc;    },{});    return res; }; console.log(groupObject(obj));

आउटपुट

कंसोल में आउटपुट:

{    '1': {       '1': { time: 1, day: 1 },       '2': { time: 2, day: 1 },       '3': { time: 3, day: 1 }    },    '2': {       '1': { time: 1, day: 2 },       '2': { time: 2, day: 2 },       '3': { time: 3, day: 2 }    } }

  1. जावास्क्रिप्ट में स्टैटिक प्रॉपर्टीज जावास्क्रिप्ट में स्टैटिक प्रॉपर्टीज

    स्टैटिक प्रॉपर्टीज क्लास फ़ंक्शन को ही असाइन की जाती हैं न कि इसकी प्रोटोटाइप प्रॉपर्टी को। इन प्रॉपर्टीज को बिना किसी ऑब्जेक्ट को इंस्टेंशिएट किए सीधे कॉल किया जा सकता है। जावास्क्रिप्ट में स्टैटिक प्रॉपर्टीज का कोड निम्नलिखित है - उदाहरण <!DOCTYPE html> <html lang=en> <head> &

  1. जावास्क्रिप्ट में शेयर्ड प्रॉपर्टीज जावास्क्रिप्ट में शेयर्ड प्रॉपर्टीज

    प्रॉपर्टीज को ऑब्जेक्ट की प्रोटोटाइप प्रॉपर्टी से जोड़कर शेयर किया जा सकता है। ये प्रॉपर्टीज ऑब्जेक्ट के सभी इंस्टेंसेज के बीच शेयर की जाएंगी। जावास्क्रिप्ट में शेयर्ड प्रॉपर्टीज का कोड निम्नलिखित है - उदाहरण <!DOCTYPE html> <html lang=en> <head> <meta charset=UTF-8 /> <

  1. जावास्क्रिप्ट में वैल्यू के आधार पर ऑब्जेक्ट्स को ग्रुप कैसे करें? जावास्क्रिप्ट में वैल्यू के आधार पर ऑब्जेक्ट्स को ग्रुप कैसे करें?

    जावास्क्रिप्ट में वैल्यू के आधार पर ऑब्जेक्ट्स को ग्रुप करने के लिए निम्नलिखित कोड है: उदाहरण <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" /&g