繁体   English   中英

使用谷歌应用脚​​本解析以下 JSON

[英]Parse the following JSON using google apps script

- 大家好,我已经好几天尝试使用谷歌应用程序脚本解析以下 JSON。

[
{
"NOMBRE": "ViejosNoUsarEl Quebrachal",
"ACTIVO": false,
"CODIGO": "ViejosNoUsarQUEB",
"CALLE": null,
"NUMERO": null,
"PROVINCIA": "Jujuy",
"LOCALIDAD": "EL MORRO",
"ZONA": null,
"SUPERFICIE": 3900,
"CODIGOEXTERNO": ""
},
{
"NOMBRE": "ViejoNoUsarSanta Teresa",
"ACTIVO": false,
"CODIGO": "ViejoNoUsarST",
"CALLE": null,
"NUMERO": null,
"PROVINCIA": "San Luis",
"LOCALIDAD": "Villa MercedesOLD",
"ZONA": "Oeste",
"SUPERFICIE": 3700,
"CODIGOEXTERNO": ""
},
{
"NOMBRE": "ViejosNoUsarGil",
"ACTIVO": false,
"CODIGO": "ViejosNoUsarGIL",
"CALLE": null,
"NUMERO": null,
"PROVINCIA": "Cordoba",
"LOCALIDAD": "9 DE JULIO",
"ZONA": "Oeste",
"SUPERFICIE": 200,
"CODIGOEXTERNO": ""
},
{
"NOMBRE": "ViejosNoUsarDon Manuel",
"ACTIVO": false,
"CODIGO": "ViejosNoUsarDM",
"CALLE": null,
"NUMERO": null,
"PROVINCIA": "Cordoba",
"LOCALIDAD": "9 DE JULIO",
"ZONA": "Oeste",
"SUPERFICIE": 400,
"CODIGOEXTERNO": ""
}
]

GET 响应在我发布时给了我 JSON。

使用 google 应用程序脚本,我想在 google 工作表上添加与数组中的对象一样多的行。

在这种情况下,将有 4 个 google sheet 行。 我只想解析属性的值。

例如,第一行如下所示:

ViejosNoUsarEl Quebrachal | 假 | 别荷斯NoUsarQUEB | 空 | 空 | 胡胡伊 | 埃尔莫罗 | 空 | 3900 |

我想把这个问题的重点放在传递问题上,而不是把行添加到谷歌表上。

问题是我无法使用点符号来提取我想要的值。

例如 Logger.log(response.provincia); 打印“信息为空”。

修改点:

  • 从您显示的示例数据中, For example, Logger.log(response.provincia); prints "Information null". For example, Logger.log(response.provincia); prints "Information null". ,我认为您的问题的原因是您试图使用response.provincia从数组中检索值。 在这种情况下,它必须是response[i].PROVINCIA i是数组的索引。 如果要检索数组第一个元素的“PROVINCIA”值,可以使用response[0].PROVINCIA 根据您的显示数据, provincia必须是PROVINCIA 运行response[0].provincia时,返回undefined 请注意这一点。
  • 当您要检索ViejosNoUsarEl Quebrachal | false | ViejosNoUsarQUEB | null | null | Jujuy | EL MORRO | null | 3900 | ViejosNoUsarEl Quebrachal | false | ViejosNoUsarQUEB | null | null | Jujuy | EL MORRO | null | 3900 | 按顺序,在这种情况下,通过按顺序准备键来检索值。

当这些点反映在示例脚本中时,它变成如下。

示例脚本:

 const keys = ["NOMBRE", "ACTIVO", "CODIGO", "CALLE", "NUMERO", "PROVINCIA", "LOCALIDAD", "ZONA", "SUPERFICIE", "CODIGOEXTERNO"]; const response = [ { "NOMBRE": "ViejosNoUsarEl Quebrachal", "ACTIVO": false, "CODIGO": "ViejosNoUsarQUEB", "CALLE": null, "NUMERO": null, "PROVINCIA": "Jujuy", "LOCALIDAD": "EL MORRO", "ZONA": null, "SUPERFICIE": 3900, "CODIGOEXTERNO": "" }, { "NOMBRE": "ViejoNoUsarSanta Teresa", "ACTIVO": false, "CODIGO": "ViejoNoUsarST", "CALLE": null, "NUMERO": null, "PROVINCIA": "San Luis", "LOCALIDAD": "Villa MercedesOLD", "ZONA": "Oeste", "SUPERFICIE": 3700, "CODIGOEXTERNO": "" }, { "NOMBRE": "ViejosNoUsarGil", "ACTIVO": false, "CODIGO": "ViejosNoUsarGIL", "CALLE": null, "NUMERO": null, "PROVINCIA": "Cordoba", "LOCALIDAD": "9 DE JULIO", "ZONA": "Oeste", "SUPERFICIE": 200, "CODIGOEXTERNO": "" }, { "NOMBRE": "ViejosNoUsarDon Manuel", "ACTIVO": false, "CODIGO": "ViejosNoUsarDM", "CALLE": null, "NUMERO": null, "PROVINCIA": "Cordoba", "LOCALIDAD": "9 DE JULIO", "ZONA": "Oeste", "SUPERFICIE": 400, "CODIGOEXTERNO": "" } ]; const values = response.map(o => keys.map(h => o[h])); console.log(values)

  • 运行此脚本时,值将作为二维数组返回。 这可用于使用setValues放入电子表格。

参考:

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

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