我想访问object属性。如果没有数组周围的单引号,我无法访问键值。当我手动输入单引号时,它返回值。但如何自动放置单引号。 java脚本中是否有任何功能。如果我使用String()函数转换为字符串我丢失方括号。这是我的代码:
var seen = {'[7, 6]': '[0, 0]'}
function getParent(childState){
//"""return parent of state, if it exists"""
if(childState in seen){ return seen[childState]; }
else{ return undefined; }
};
getParent([7, 6]);
答案 0 :(得分:2)
要使用属性访问器,您需要提供一个字符串。这意味着seen
对象中的键需要采用字符串格式。如果要使用数组与getParent()进行交互,则应首先将参数转换为字符串。但是seen
对象中的值仍然可以是数组。
var seen = {'7,6': [0, 0]}
function getParent(childState){
var key = childState.toString();
return seen[key];
};
getParent([7, 6]);
答案 1 :(得分:0)
您可以检测是否正在传递数组并手动构建字符串键
if(typeof childState =="object"){
childstate = "[" + childState.toString() + "]";
}