Javascript JSON.parse带有中文字符的数据,但输出变为;“未定义”;

Javascript JSON.parse带有中文字符的数据,但输出变为;“未定义”;,javascript,jquery,json,Javascript,Jquery,Json,我有一个包含中文字符的JSON数据,如下所示: output = [{"name":"姓名"},{"name":"年齡"},{"name":"地址"}] 我试着做到以下几点: var method = JSON.parse(output); $.each(method, function(name, value) { alert(value.method); } 而不是返回姓名, 年齡, 及地址, 它返回undefined、undefined和undefined 任何想法或帮助都将不

我有一个包含中文字符的JSON数据,如下所示:

output = [{"name":"姓名"},{"name":"年齡"},{"name":"地址"}]
我试着做到以下几点:

var method = JSON.parse(output);
$.each(method, function(name, value) {
    alert(value.method);
}
而不是返回姓名, 年齡, 及地址, 它返回undefined、undefined和undefined

任何想法或帮助都将不胜感激!提前谢谢大家

jQuery.each(集合、回调(indexInArray、valueOfElement))

您错过了每个()的api

jQuery.each(集合、回调(indexInArray、valueOfElement))

您错过了每个()的api


从您对
$的使用中,我认为您使用的是jQuery?
output=[{“name”:”姓名"},{“姓名”:年齡},{“名称”:地址“}]
根本不使用JSON,您也不会在其上使用
JSON.parse
。它只是一个JavaScript数组文本。如果您有文本
[{“name”:”姓名},{“名称”:年齡},{“名称”:地址“}]
在一个文件中,或者从ajax请求或其他东西返回,这将是JSON,您需要对其进行解析。非常感谢T.J.,您正确地认为“输出”是从单独的php文件返回的JSON_encode函数的结果。奇怪的是,“输出”值可以是中文或英文,即。姓名 或者名字,年齡 或者年龄…等等,当值是英文的时候,我可以在JSON.parse(输出)之后执行alert(value.method)并查看“name”,“age”…,但是如果是中文的话,alert值会变成“undefined”…知道可能的原因吗?非常感谢!@Wil:No,如果输出是
[{“name”:“english”}]
,你不能警告
值。方法
,让它成为除
未定义
之外的任何东西。该对象上没有
方法
属性。如果你认为你在这样做,那么你在做你没有展示的事情。把它放在一起,放到问题中,理想的情况是在或上也做一个实时版本。邱德清有giv您在他/她的答案中输入了正确的代码。明白了!非常感谢T.J.!因为您使用了
$。每个
,我认为您使用的是jQuery?
output=[{“name”:”姓名},{“名称”:年齡},{“名称”:地址“}]
根本不使用JSON,您也不会在其上使用
JSON.parse
。它只是一个JavaScript数组文本。如果您有文本
[{“name”:”姓名},{“名称”:年齡},{“名称”:地址“}]
在一个文件中,或者从ajax请求或其他东西返回,这将是JSON,您需要对其进行解析。非常感谢T.J.,您正确地认为“输出”是从单独的php文件返回的JSON_encode函数的结果。奇怪的是,“输出”值可以是中文或英文,即。姓名 或者名字,年齡 或者年龄…等等,当值是英文的时候,我可以在JSON.parse(输出)之后执行alert(value.method)并查看“name”,“age”…,但是如果是中文的话,alert值会变成“undefined”…知道可能的原因吗?非常感谢!@Wil:No,如果输出是
[{“name”:“english”}]
,你不能警告
值。方法
,让它成为除
未定义
之外的任何东西。该对象上没有
方法
属性。如果你认为你在这样做,那么你在做你没有展示的事情。把它放在一起,放到问题中,理想的情况是在或上也做一个实时版本。邱德清有giv恩,你在他/她的答案中输入了正确的代码。明白了!非常感谢T.J.!明白了!也非常感谢邱德清!!不客气 :) @T.J.Crowder很热心,“你错过了each()的api”怎么回事?据我所知,你使用每个api的方式与OP完全相同。唯一的区别是你访问了正确的属性,但这与
$无关。each
。明白了!非常感谢邱德清!!不客气 :) @T.J.Crowder是个热心人,“你错过了each()的api”怎么回事?据我所知,你使用每个api的方式与OP完全相同。唯一的区别是你访问的属性正确,但这与
$无关。each
var method = JSON.parse(output);
$.each(method, function(name, value) {
    alert(value.name); // value is an object {name: "地址"}
}