![](/img/trans.png)
[英]Javascript: Trying to access elements of a JSON array gives me individual characters
[英]my javascript array is coming through as individual characters
我正在使用 javascript 编码在 Zapier 中创建新搜索,并且需要检索包含元素子元素的子元素的数组 - 类别名称。
我的初始调用和返回给出的代码如下“返回 1”中所示
return [results];
但是,正如我所说,我需要类别中的名称,所以我添加到我的代码中:
for (i=0; i<=2; i++){
ans[i] = results.projects[0].categories[i].name;
}
return [ans];
但现在我返回的数组包含字母字符作为元素。 (请参阅下面的返回 2)我错过了什么?
返回 1 :
{
"id": 2,
"name": "Test Project 1",
"status": {
"id": 10,
"name": "development",
"label": "development"
},
...
"categories": [
{
"id": 1,
"name": "General",
"project": {
"id": 0,
"name": null
}
},
{
"id": 2,
"name": "Test Global Category 1",
"project": {
"id": 0,
"name": null
}
},
}
]
}
返回 2:
[
{
"0": "G",
"1": "e",
"2": "n",
"3": "e",
"4": "r",
"5": "a",
"6": "l"
},
{
"0": "T",
"1": "e",
"2": "s",
"3": "t",
"4": " ",
"5": "G",
"6": "l",
"7": "o",
"8": "b",
"9": "a",
"10": "l",
"11": " ",
"12": "C",
"13": "a",
"14": "t",
"15": "e",
"16": "g",
"17": "o",
"18": "r",
"19": "y",
"20": " ",
"21": "1"
}]
let projects = { "id": 2, "name": "Test Project 1", "status": { "id": 10, "name": "development", "label": "development" }, "categories": [ { "id": 1, "name": "General", "project": { "id": 0, "name": null } }, { "id": 2, "name": "Test Global Category 1", "project": { "id": 0, "name": null } }, ] } let names = projects.categories.map((x)=>{ return (x.name); }) console.log(names)
在这里,我们从程序对象访问类别并将每个类别的所有名称推送到数组中。 如果您有多个程序,则循环遍历每个程序以获取所有类别名称。
如果您只是想访问嵌套的 JSON 数据,则不需要使用 for 循环进行迭代。
将 'categories' 设置为一个变量,然后使用 'dot notation' 访问 'name'。
类似于“让类别 = res.data.categories”。 然后像这样访问 'name' 'categories.name'。
可能不需要使用 for 循环。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.