所以我正在用nodejs开发一个应用程序,该应用程序读取json文件并将部分信息写入xlsx(excel)文件。
但是,在我使用的json中,有一些对象名称中包含“-”,例如:
{
items[{
"example-object": "ex"
}]
}
现在要将这个对象放在nodejs中的变量中,我会写类似的东西:
var jsonObject = items[0].example-object
这适用于不包含'-'的对象名称,但是当它们出现时,出现以下错误:
var jsonObject = items[0].example-object
^
ReferenceError: object is not defined
at makeRow (C:\Users\Mathijs\Documents\work\api_to_excel\main.js:56:44)
at writeToXlsx (C:\Users\Mathijs\Documents\work\api_to_excel\main.js:34:3)
at C:\Users\Mathijs\Documents\work\api_to_excel\main.js:25:2
at FSReqWrap.readFileAfterClose [as oncomplete]
(internal/fs/read_file_context.js:53:3)
如何在不出现此错误的情况下获取“示例对象”的内容?
答案 0 :(得分:0)
您需要使用其他[]
语法访问属性。例如:
// JSON
var jsonObject = items[0]['example-object']
连字符(-
)在JavaScript变量名称中无效,但在JSON语法中完全可以接受。如果变量没有没有连字符,那么您可以像尝试的一样进行操作:
// JavaScript
var jsonObject = items[0].exampleObject