以下是目前代码的快速版本:
function foo(attributeName, someJSObj, key, newValue)
{
someJSObj[key].attributeName = newValue;
}
显然这不起作用,因为它只是创建了一个名为attributeName的新元素。是否有一种简单的方法可以将attributeName取消引用到表示someJSObj上某些现有属性的字符串中?
答案 0 :(得分:5)
您还需要使用attributeName
的括号表示法:
function foo(attributeName, someJSObj, key, newValue)
{
someJSObj[key][attributeName] = newValue;
}
现在attributeName
的值被用作标识符而不是标识符attributeName
本身。
答案 1 :(得分:1)
如果我理解正确,您可以使用ECMAScript
function foo(attributeName, someJSObj, key, newValue)
{
someJSObj[key][attributeName] = newValue;
}
希望这会对你有所帮助。
答案 2 :(得分:0)
尝试someJSObj [key] .setAttribute(attributeName,newValue)