繁体   English   中英

我的 javascript 数组以单个字符的形式出现

[英]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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM