मैं संपत्ति द्वारा जियोजोन डेटा का सबसेट प्राप्त करने का प्रयास कर रहा हूं।

 {
   "type": "FeatureCollection",
   "features": [
  {
    "type": "Feature",
    "geometry": {
       "type": "Point",
       "coordinates":  [ -115.5578333,32.9646667 ]
    },
    "properties": {
    "Year1979_03":2.92606854,
    "Year1979_06":2.963032273,
    "Year1979_09":2.968127935
    }
  }]

यदि कोई उपयोगकर्ता वर्ष "Year1979_03 चुनता है तो उसे वापस लौटना चाहिए

{
       "type": "FeatureCollection",
       "features": [
      {
        "type": "Feature",
        "geometry": {
           "type": "Point",
           "coordinates":  [ -115.5578333,32.9646667 ]
        },
        "properties": {
        "Year1979_03":2.92606854,
        }
      }]
0
user435215 14 नवम्बर 2018, 03:45

1 उत्तर

सबसे बढ़िया उत्तर

सुनिश्चित नहीं है कि मैं आपके प्रश्न को सही ढंग से समझता हूं, लेकिन यदि आपके पास उपयोगकर्ता इनपुट है और आपके पास एक चर में है:

let userInput = "Year1979_03"

और आपके पास लौटा हुआ डेटा उसके मूल रूप में है

let originalData = {
   "type": "FeatureCollection",
   "features": [
  {
    "type": "Feature",
    "geometry": {
       "type": "Point",
       "coordinates":  [ -115.5578333,32.9646667 ]
    },
    "properties": {
        "Year1979_03":2.92606854,
        "Year1979_06":2.963032273,
        "Year1979_09":2.968127935
    }
   }
  ]
 }

तब आप उस वस्तु को बनाने के लिए es6 स्प्रेड ऑपरेटर का उपयोग कर सकते हैं जिसे आप बनाना चाहते थे:

let reformedData = {
    ...originalData, 
    "features": [
    {
     ...originalData.features[0], 
     "properties": 
    {
     [userInput]: originalData.features[0].properties[userInput] 
    } 
   }] 
  }

ऊपर, मैं उन सभी कुंजियों और मूल्यों को पुनर्प्राप्त करने के लिए स्प्रेड ऑपरेटर का उपयोग करता हूं जिन्हें मैं मूल डेटा ऑब्जेक्ट से रखना चाहता हूं, लेकिन उन लोगों को निर्दिष्ट करें जिन्हें मैं बदलना/प्रतिस्थापित करना चाहता हूं। यह आपको वह वस्तु लाएगा जो आप चाहते थे।

0
selmanbey 14 नवम्बर 2018, 01:40