gpt4 book ai didi

javascript - 从嵌套数组中获取 json 数据

转载 作者:行者123 更新时间:2023-11-28 02:07:08 27 4
gpt4 key购买 nike

我在理解一些 JSON 内容时遇到了一些麻烦。也就是说,我试图从我正在查询的 google 翻译 api 收到的 json 响应中检索字符串。

  var translator = function () {
for (var i = 0; i < result.length; i++)
{
//Construct URI
var source =
'https://www.googleapis.com/language/translate/v2?' +
'key=MY-API-KEY-REMOVED-ON-PURPOSE&' +
'source=en&' +
'target=fr&' +
'q=' +
result[i][1]; //looping over an array, no problem there



//Receive response from server
var to_Translate =new XMLHttpRequest();
to_Translate.open("GET",source,false);
to_Translate.send();
var translated = to_Translate.responseText;

JSON.parse(translated);
translated = translated.data.translations[0].translatedText;

console.log(translated);


}
};


translator();

哪里

console.log(translated);

产量

 {
"data": {
"translations": [
{
"translatedText": "some stuff that's been translated"
}
]
}
}

我的问题是:我如何访问translatedText的值?我试过:

translated.data.translations[0].translatedText;

但是好像不行。当我 console.log 时,我得到

    Uncaught TypeError: Cannot read property 'translations' of undefined 
translator
(anonymous function)

请告诉我你们的想法!

最佳答案

这只是你必须用它来解析的文本

JSON.parse(translated)

因此您可以使用 translated.data 来访问它

更新

您收到的错误意味着 translated.data 未定义,您必须将解析分配给变量,否则它将永远无法工作,它不会就地修改它

var translated = JSON.parse(to_Translate.responseText);

关于javascript - 从嵌套数组中获取 json 数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17612147/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com