我可以't访问JSON中的第一个对象
I can't access the first object in JSON
我尝试过遵循其他指南,但似乎都不起作用。我想在一个单独的JSON文件中获得第一个对象,它看起来像这样(片段):
{
"employees": [{
"occupation": "cook",
"id": [{
"address": {
"postal_code": 12342,
"city": "detroit"
},
"children": "none"
],
}
}
// and so forth, there are more objects in the employees-array
我的代码片段如下:
$.getJSON(url, function(data) {
$.each(data.employees, function(i, emp) {
if (this.id.length) {
console.log(this[0].address.city);
}
}
我想访问第一个对象的"地址"。如果我键入`console.log(this.address[0].city);,我将从"employees"中的每个对象中获得所有第一个"city"值。
事先谢谢!
在each()
内部,this
将引用employee
对象,因此需要将console.log()
修改为:
$.each(data.employees, function(i, emp) {
if (this.id.length) {
console.log(this.id[0].address.city);
}
});
为什么不在每个块中使用emp变量?
$.each(data.employees, function(i, emp) {
if (emp.id.length) {
console.log(emp.id[0].address.city);
}
}
如果我正确理解了你的问题,并且根据@Velimir Tchatchevsky的评论,我认为你想要的是:
data.employees[0].id[0].address.city
jsfidle
最初您的对象是
{
"employees": [{
"occupation": "cook",
"id": [{
"address": {
"postal_code": 12342,
"city": "detroit"
},
"children": "none"
],
}
}
试试这个代码。
$.each(data.employees, function(i, emp) { //each function will able access each employees
if (this.id.length) {
console.log(this.id[0].address.city); // at each employee get the first element of array id.
}
}
.each
函数将遍历employees
数组this.id[0]
这将能够访问被标识为id的数组的第一个元素。在id内有一个地址对象。"address": { "postal_code": 12342, "city": "detroit" }
this.id[0].address
:-此代码将为您提供地址对象。{ "postal_code": 12342, "city": "detroit" }
this.id[0].address.city
:-在地址对象中,您将使用这段代码获得城市。给你答案。。"city": "detroit"
谢谢。
相关文章:
- AngularJS&JSON-从Previous&下一个对象
- 使用来自AngularJS的Web API JSON响应-错误:应为和数组,但得到了一个对象
- 试图解析一个大型JSON对象并提取数据,但不断出现意外的令牌错误
- Kendo Grid:如何对绑定到一个简单json对象的列进行排序(和过滤)
- AngularJS,过滤器:如何将一个巨大的对象(JSON)变成一个数组
- 如何存储一个对象数组,这些对象是 ajax 查询从 javascript 中的 JSON 中提取数据的结果
- 如何使用 angularjs 获取同一 json 数组中具有 id 的另一个对象
- 从JSON创建一个对象,并在Javascript中给它一些方法
- 从 jQuery 读取只有一个对象的 JSON 数组的值
- 在jquery中,json对象How中的每个循环(使循环从对象中找到一个值,并与另一个对象值进行比较,以避免重复打印)
- 如何在Javascript/JQuery上获得一个PHP JSON编码的对象作为变量
- JSON 从最后一个对象中删除尾随逗号
- 让php输出带引号的Json,以便javascript将其视为一个对象
- 为什么子类数组的JSON字符串化是一个对象
- 需要从 Angular JS 应用程序中的另一个 JSON 对象数组填充 JSON 数组的每个对象 JSON 对象数组
- (Angular)将一个对象插入json数组
- Javascript JSON解析对象,一个对象属性未定义,没有抛出错误
- Json数组附加一个对象
- 我需要在对象中设置json对象属性,然后从同一对象中的另一个对象引用该属性
- 使用json传递一个对象数组给mvc控制器