Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/14.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 如何从该数组中获取某些对象的值?_Javascript_Arrays - Fatal编程技术网

Javascript 如何从该数组中获取某些对象的值?

Javascript 如何从该数组中获取某些对象的值?,javascript,arrays,Javascript,Arrays,我想知道“城市”和“国家”的价值 这是我的HTML和javascript代码 我试过: 结果.城市 结果[“城市”] 但它们似乎不起作用;给我未定义的值 var result=document.getElementById(“json结果”); const Http=new XMLHttpRequest(); addEventListener(“加载”,函数(){ log(“调用getLocation”); var bdcApi=”https://api.bigdatacloud.ne

我想知道“城市”和“国家”的价值

这是我的HTML和javascript代码

我试过:

  • 结果.城市
  • 结果[“城市”] 但它们似乎不起作用;给我未定义的值

var result=document.getElementById(“json结果”); const Http=new XMLHttpRequest(); addEventListener(“加载”,函数(){ log(“调用getLocation”); var bdcApi=”https://api.bigdatacloud.net/data/reverse-geocode-client" navigator.geolocation.getCurrentPosition( (职位)=>{ bdcApi=bdcApi+ “?纬度=”+位置坐标纬度+ “&longitude=“+position.coords.longitude”+ “&LocationLanguage=en”; getApi(bdcApi); }, (错误)=>{ getApi(bdcApi); }, { EnableHighAccurance:正确, 超时:5000, 最大值:0 }); }) 函数getApi(bdcApi){ Http.open(“GET”,bdcApi); Http.send(); Http.onreadystatechange=函数(){ if(this.readyState==4&&this.status==200){ result.innerHTML=this.responseText; var results=this.responseText document.getElementById(“城市”).innerHTML=results.city } }; }
在尝试访问其成员之前,需要将API的文本响应转换为实际的Javascript对象。您可以使用将JSON文本转换为Javascript对象

请尝试以下方法:

const results = JSON.parse(this.responseText);

(作为旁注,如果您不需要支持Internet Explorer,最好使用更新且更易于使用的浏览器,而不是
XMLHttpRequest

这是否回答了您的问题?
const results = JSON.parse(this.responseText);