जावास्क्रिप्ट में json कुंजी और मान कैसे प्राप्त करें?


83

जैसा कि नीचे दिखाया गया है, मैं एक जसन लौटा रहा हूं

{"name": "", "skills": "", "jobtitel": "Entwickler", "res_linkedin": "GwebSearch"}

मैं प्रत्येक तत्व कुंजी और मूल्य प्राप्त करने की कोशिश कर रहा हूं:

..
}).done(function(data){
    alert(data['jobtitel']);
});

मैं undefinedअलर्ट हो रहा हूं । क्यों? मैंने कोशिश की data.jobtitel, मैंने कोशिश की पाश लेकिन कोई सफलता नहीं ..


पहले यू को उस जसन को एरे में बदलने की जरूरत है, इसके लिए data.jobtitel की कोशिश करनी होगी
हंस

JSON स्ट्रिंग है और आप वहां पहुंचना चाहते हैं, फिर u को कन्वर्ट करना होगा ...
हंस

@swan, $ .parseJSON हमेशा हर ब्राउज़र में उपलब्ध नहीं है .. क्या करें?
डोनर

1
अगर u jquery जोड़ें तो $ .parseJSON काम करेगा ... अन्यथा u को शुद्ध जावास्क्रिप्ट JSON कनवर्टर JSON.eval (jsonstring) का उपयोग करना होगा
swan

@ हंस, एकदम सही! अब यह काम कर रहा है
Doniyor

जवाबों:


149
//By using jquery json parser    
var obj = $.parseJSON('{"name": "", "skills": "", "jobtitel": "Entwickler", "res_linkedin": "GwebSearch"}');
alert(obj['jobtitel']);

//By using javasript json parser
var t = JSON.parse('{"name": "", "skills": "", "jobtitel": "Entwickler", "res_linkedin": "GwebSearch"}');
alert(t['jobtitel'])

इस jsfiddle की जाँच करें

JQuery 3.0 के रूप में , $ .parseJSON पदावनत है। JSON तार को पार्स करने के लिए इसके बजाय देशी JSON.parse विधि का उपयोग करें।

स्रोत: http://api.jquery.com/jquery.parsejson/


2
यह पर्याप्त दस्तावेज नहीं है। Json ['KeyAsString'] का उपयोग करने की क्षमता। वास्तव में महान। धन्यवाद।
2033 पर Android334

मैं एंटिकलर को जॉबटिटेल में कैसे हल करूंगा? क्या कोई भी मूल निवासी है या मुझे अपना कोड लिखना होगा?
dGRAMOP

22

आपके पास उस Jsonस्ट्रिंग का उपयोग करके पार्स हैJSON.parse()

..
}).done(function(data){
    obj = JSON.parse(data);
    alert(obj.jobtitel);
});

सरलीकृत: JSON.parse (डेटा) .jobtitle
जोनास

12
var data = {"name": "", "skills": "", "jobtitel": "Entwickler", "res_linkedin": "GwebSearch"}

var parsedData = JSON.parse(data);
alert(parsedData.name);
alert(parsedData.skills);
alert(parsedData.jobtitel);
alert(parsedData.res_linkedin);

1
यह है कि आप इसे जावास्क्रिप्ट में कैसे करते हैं।
इशारा अमरसेकरा

4

http://jsfiddle.net/v8aWF/

एक बेला बाहर काम किया। इसकी जांच करें

(function() {
    var oJson = {
        "name": "", 
        "skills": "", 
        "jobtitle": "Entwickler", 
        "res_linkedin": "GwebSearch"
    }
    alert(oJson.jobtitle);
})();

2

JSON.parse का उपयोग करने के बजाय एक सरल तरीका

 success: function(response){
     var resdata = response;
     alert(resdata['name']);
}

1

ऐसा लगता है dataकि इसमें वह नहीं है जो आपको लगता है कि इसमें शामिल है - इसे जांचें।

let data={"name": "", "skills": "", "jobtitel": "Entwickler", "res_linkedin": "GwebSearch"};

console.log( data["jobtitel"] );
console.log( data.jobtitel );


0

जावास्क्रिप्ट में JSON कुंजी और मान प्राप्त करने के लिए आप निम्न समाधान का उपयोग कर सकते हैं:

var dt = JSON.stringify(data).replace('[', '').replace(']', '');
if (dt) {
  var result = jQuery.parseJSON(dt);
  var val = result.YOUR_OBJECT_NAME;
}

1
हालांकि यह कोड स्निपेट समाधान हो सकता है, स्पष्टीकरण सहित वास्तव में आपके पोस्ट की गुणवत्ता में सुधार करने में मदद करता है। याद रखें कि आप भविष्य में पाठकों के लिए प्रश्न का उत्तर दे रहे हैं, और वे लोग आपके कोड सुझाव के कारणों को नहीं जान सकते हैं।
नरेंद्र जाधव

0

कुंजी प्राप्त करने के लिए

var a = {"a":"1","b":"2"};
var keys = []
for(var k in a){
  keys.push(k)
}

मान पाने के लिए।

var a = {"a":"1","b":"2"};
var values = []
for(var k in a){
  values.push(a[k]);
}
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.