Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/392.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_Ajax_Json - Fatal编程技术网

Javascript 从JSON获取特定元素

Javascript 从JSON获取特定元素,javascript,ajax,json,Javascript,Ajax,Json,我知道这是一个非常简单和常见的问题;我已经读过一些问答,但我不知道如何解决我的问题 我有一个执行SPARQL查询的AJAX调用中的简短json: { "head": { "vars": [ "name" , "email" ] } , "results": { "bindings": [ { "name": { "type": "literal" , "value": "Name Surname" } , "email":

我知道这是一个非常简单和常见的问题;我已经读过一些问答,但我不知道如何解决我的问题

我有一个执行SPARQL查询的AJAX调用中的简短json:

{
  "head": {
    "vars": [ "name" , "email" ]
  } ,
  "results": {
    "bindings": [
      {
        "name": { "type": "literal" , "value": "Name Surname" } ,
        "email": { "type": "literal" , "value": "name.surname@email.com" }
      }
    ]
  }
}
我正在搜索应用程序单个用户的姓名和电子邮件,所以 结果应始终由单个元素组成

我要检索的是用户的“名称”。 我试过这样的方法:

response["name"].value
//or
response[0]["name"]
//or
response.name
但总是错的

如何获取名称值?感谢所有愿意帮忙的人。

试试这个

response.results.bindings[0].name.value
response.results.bindings[0].email.value
更新

试试这个

response.results.bindings[0].name.value
response.results.bindings[0].email.value
更新


您可以查看此处创建的小提琴

代码如下所示

var x='{ "head": { "vars": [ "name" , "email" ]   } ,  "results": {  "bindings": [       {         "name": { "type": "literal" , "value": "aadil keshwani" } ,         "email": { "type": "literal" , "value": "name.surname@email.com" }       }     ]   }}';
obj = JSON && JSON.parse(x) || $.parseJSON(x);
console.log(obj);
console.log(obj["results"]["bindings"][0]["name"]["value"]);
alert(obj["results"]["bindings"][0]["name"]["value"]);

希望这有帮助:)

您可以查看此处创建的小提琴

代码如下所示

var x='{ "head": { "vars": [ "name" , "email" ]   } ,  "results": {  "bindings": [       {         "name": { "type": "literal" , "value": "aadil keshwani" } ,         "email": { "type": "literal" , "value": "name.surname@email.com" }       }     ]   }}';
obj = JSON && JSON.parse(x) || $.parseJSON(x);
console.log(obj);
console.log(obj["results"]["bindings"][0]["name"]["value"]);
alert(obj["results"]["bindings"][0]["name"]["value"]);

希望这有帮助:)

在JSON中,您必须始终提供您想要访问的属性的完整路径。假设您已将解析后的JSON存储在变量响应中,以下路径将为您获取相应的值

response.results.bindings[0].name.value
for name
response.results.bindings[0]。email.value
用于电子邮件


建议您详细了解JSON的基本概念。

在JSON中,您必须始终提供您想要访问的属性的完整路径。假设您已将解析后的JSON存储在变量响应中,以下路径将为您获取相应的值

response.results.bindings[0].name.value
for name
response.results.bindings[0]。email.value
用于电子邮件


建议您详细了解JSON的基本概念。

尝试
response[“results”][“bindings”][0][“name”][“value”][code>从这里了解更多信息尝试
response[“results”][0][“bindings”][“name”][“value”][/code>从这里了解更多信息我很高兴它有所帮助:)在我们的案例中使用括号
[“results”]
。使用dot
要简单得多,就像在我的示例中一样。我很高兴它有帮助:)在我们的例子中,使用括号
[“结果”]
是不必要的。使用dot
要简单得多,就像在我的示例中一样。好的,谢谢!我会读那本指南,它肯定会对我有帮助!好的,谢谢!我会读那本指南,它肯定会对我有帮助!