我的数据:我有一个对象数组:
var totalsArray = [
{ Applications: 1, Computing Servers: 0, Contracts: 0, Country: "United States" },
{ Applications: 1, Computing Servers: 0, Contracts: 0, Country: "Italy" },
{ Applications: 1, Computing Servers: 0, Contracts: 0, Country: "United States" },
{ Applications: 1, Computing Servers: 0, Contracts: 0, Country: "Spain" }
];
我的代码:然后我尝试使用以下代码提取密钥:
var objectKeys = d3.keys(totalsArray[0]).filter(function(key) { return key;} );
但是,由于名为" 计算服务器"的密钥空间,我收到错误。
我的问题:有没有办法正确创建并保留"空间"在密钥名称/字符串?
感谢您提供任何帮助。
答案 0 :(得分:7)
是的,一个名称可以是任何字符串(所有值在内部使用之前都被强制转换为字符串。)
这可以使用文字中名称的引号(双引号或单引号)来完成:
{ Applications: 1, "Computing Servers": 0, .. },
就像使用obj[prop]
语法(其中prop
是任何表达式可以转换为合理的字符串值)一样可以完成:
obj["Computing Servers"] = 42;