【发布时间】:2016-11-08 09:21:54
【问题描述】:
我有如下的 javascript 对象:
var row = {
'fileAttribute' : {
'.\K\ar- #%i\.n/a': true,
'size': '2040',
'type' : 'pdf'
}
};
但是当我尝试获取 row.fileAttribute['.\K\ar- #%i.n/a'] 的值时,我得到的是 undefined 而不是 true。
我知道这是因为我的属性名称包含特殊字符。 row.fileAttribute.hasOwnProperty('.\K\ar- #%i.n/a') 返回 false。
我尝试通过 _.values(row.fileAttribute['.\K\ar- #%i.n/a']) 提取此属性值,但是我得到了空数组。
这里是这个问题的一个例子:
http://jsfiddle.net/fvu2pqzz/8/
感谢您的帮助,谢谢!
【问题讨论】:
-
您链接的代码与
row.fileAttributes['.\K\ar- #%i.n/a'])有很大不同 -
绝对是错字。应该是
fileAttribute没有s,不应该吗? -
您无法通过点表示法访问该属性,因为它包含无效字符。括号符号将起作用
-
截图说你有一个名为
.K\ar- #%i.n/a的键,表示\已经被转义了,所以需要使用item.fileAttributes['.K\\ar- #%i.n/a']来获取。
标签: javascript object properties attributes