使用对象键作为变量名的javascript
我试图使用对象键使用对象键作为变量名的javascript,javascript,Javascript,我试图使用对象键p1,p2,p3作为变量名,但我对javascript的了解似乎不足以正确使用。我如何才能做到这一点,所以最后console.log(p1)是value1等 var p = { "p1": "value1", "p2": "value2", "p3": "value3" }; for (var key in p) { if (p.hasOwnProperty(key)) { console.log(key + " -> "
p1
,p2
,p3
作为变量名,但我对javascript的了解似乎不足以正确使用。我如何才能做到这一点,所以最后console.log(p1)是value1
等
var p = {
"p1": "value1",
"p2": "value2",
"p3": "value3"
};
for (var key in p) {
if (p.hasOwnProperty(key)) {
console.log(key + " -> " + p[key]);
var key = p[key]
}
}
console.log(p1,p2,p3) //value1, value2, value3
您可以使用全局
窗口对象轻松完成此操作,如:
window[key] = p[key]
var p={
“p1”:“值1”,
“p2”:“值2”,
“p3”:“值3”
};
for(p中的var键){
如果(p.hasOwnProperty(键)){
窗口[键]=p[键]
}
}
log(p1、p2、p3)
事实上,不允许覆盖对象属性键。通过阅读var key=p[key]
行,我假设这就是您的目标。这可能是一个X/Y问题。如果以后要静态引用变量,为什么要动态创建该变量?@palasH是否可以不使用窗口对象来创建该变量?