如何在javascript中获取json键和值?
Posted
技术标签:
【中文标题】如何在javascript中获取json键和值?【英文标题】:How to get json key and value in javascript? 【发布时间】:2013-09-25 11:56:37 【问题描述】:我正在返回一个json,如下所示
"name": "", "skills": "", "jobtitel": "Entwickler", "res_linkedin": "GwebSearch"
我正在尝试获取每个元素的键和值:
..
).done(function(data)
alert(data['jobtitel']);
);
我收到undefined
的警报。为什么?我试过data.jobtitel
,我试过循环但没有成功..
【问题讨论】:
首先你需要将该 json 转换为数组,然后必须尝试 data.jobtitel JSON 是字符串,你想访问那里,然后你必须转换...... @swan,$.parseJSON 并非总是在每个浏览器中都可用.. 怎么办? 如果你添加 jquery 然后 $.parseJSON 将工作...否则你必须使用纯 javascript JSON 转换器 JSON.eval(jsonstring) @swan,完美!现在它正在工作 【参考方案1】://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'])
Check this jsfiddle
从 jQuery 3.0 开始,不推荐使用 $.parseJSON。要解析 JSON 字符串,请使用 而是使用本机 JSON.parse 方法。
来源:http://api.jquery.com/jquery.parsejson/
【讨论】:
这没有足够的文档记录。使用 json['KeyAsString'] 的能力。非常好。谢谢。 如何将 Entwickler 解析为 jobtitle?有什么原生的还是我必须编写自己的代码?【参考方案2】:您已经使用 JSON.parse()
解析了 Json
字符串
..
).done(function(data)
obj = JSON.parse(data);
alert(obj.jobtitel);
);
【讨论】:
简化:JSON.parse(data).jobtitle【参考方案3】: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);
【讨论】:
这就是你在 javascript 中的做法。【参考方案4】:http://jsfiddle.net/v8aWF/
制作了一个小提琴。去看看吧
(function()
var oJson =
"name": "",
"skills": "",
"jobtitle": "Entwickler",
"res_linkedin": "GwebSearch"
alert(oJson.jobtitle);
)();
【讨论】:
【参考方案5】:获取钥匙
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]);
【讨论】:
【参考方案6】:一种简单的方法,而不是使用 JSON.parse
success: function(response)
var resdata = response;
alert(resdata['name']);
【讨论】:
【参考方案7】:看起来data
不包含您认为它包含的内容 - 检查一下。
let data="name": "", "skills": "", "jobtitel": "Entwickler", "res_linkedin": "GwebSearch";
console.log( data["jobtitel"] );
console.log( data.jobtitel );
【讨论】:
【参考方案8】:您可以使用以下解决方案在 JavaScript 中获取 JSON 键和值:
var dt = JSON.stringify(data).replace('[', '').replace(']', '');
if (dt)
var result = jQuery.parseJSON(dt);
var val = result.YOUR_OBJECT_NAME;
【讨论】:
虽然此代码 sn-p 可能是解决方案,但包含解释确实有助于提高帖子的质量。请记住,您是在为将来的读者回答问题,而这些人可能不知道您提出代码建议的原因。以上是关于如何在javascript中获取json键和值?的主要内容,如果未能解决你的问题,请参考以下文章