Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/433.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 无法访问json数据_Javascript_Json - Fatal编程技术网

Javascript 无法访问json数据

Javascript 无法访问json数据,javascript,json,Javascript,Json,我正在尝试访问json数据 console.log(result); console.log(result.data); console.log(result['data']); 控制台显示 {"code":200,"success":true,"data":"songlist"} undefined undefined 为什么我不能访问json的内部数据…您必须将其解析为js对象 console.log(result); result = JSON.parse(result); co

我正在尝试访问json数据

console.log(result);
console.log(result.data);
console.log(result['data']);
控制台显示

{"code":200,"success":true,"data":"songlist"} 
undefined 
undefined 

为什么我不能访问json的内部数据…

您必须将其解析为js对象

console.log(result);
result = JSON.parse(result);
console.log(result);
console.log(result.data);
console.log(result['data']);

您也可以使用eval;虽然它带来了严重的安全问题

eval( 'var oResult = ' + result );
console.log( oResult.data );

如果确定它不是字符串,请尝试console.log typeof result,它可以正常工作。问题一定出在别的地方。我要用弦论。哈哈哈。不客气。如果console.logresult;在{code:200,success:true,data:songlist}中生成结果,然后结果是一个字符串。您是如何生成和获得该结果的?如果您可以使用JSON.parse,为什么要使用eval?IE,还记得吗?JSON在IE 9之前是不受支持的。eval很棒,没有其他函数像eval那么有用,只是遗憾的是你几乎从来没有使用过它。即使这样,你也应该使用它。谢谢,它完美地解决了我的问题