如何使对象的每个键成为与Javascript中的键同名的变量?

如何使对象的每个键成为与Javascript中的键同名的变量?,javascript,Javascript,我有一个javascript对象,如下所示: var obj1={a:1,b:2,c:3} var a=1 var b=2 var c=3 由此,我需要将每个键提取为一个变量,如下所示: var obj1={a:1,b:2,c:3} var a=1 var b=2 var c=3 如何实现这一点?可以使用ES6解构来实现,您可以分解对象的所有属性,并将其分配到与属性名称相同的变量中 var {a,b,c} = obj1; console.

我有一个javascript对象,如下所示:

var obj1={a:1,b:2,c:3}
    var a=1
    var b=2
    var c=3
由此,我需要将每个键提取为一个变量,如下所示:

var obj1={a:1,b:2,c:3}
    var a=1
    var b=2
    var c=3

如何实现这一点?

可以使用ES6解构来实现,您可以分解对象的所有属性,并将其分配到与属性名称相同的变量中

var {a,b,c} = obj1;

console.log(a);
console.log(b);
console.log(c);
尝试:

var obj1={a:1,b:2,c:3}
让关键点=对象。关键点(obj1)
keys.forEach(key=>{
let value=obj1[key.toString()];
console.log(key);//使用key
console.log(value)//使用值

})
这不是一个很好的解决方案(这不是您应该做的事情-最好只使用初始对象),但您可以将
obj1
的所有属性指定给窗口对象,允许您独立引用它们,而无需事先知道键:

var obj1={
答:1,,
b:2,
c:3
};
分配对象(窗口,obj1);

控制台日志(c)
const{a,b,c}=obj1
我只是好奇,但这样做的目的是什么?我的意思是你可以使用
eval(“var”+key+“=“+value+”;”)
,尽管我真的看不出它有什么意义。@Dellirium你的方法也能解决我的问题。非常感谢您的帮助。这只是一个示例对象。我有一个对象有100个键。这样做是不可行的。我需要能够做到这一点iteratively@AkshayBharadwaj记住,他说你不应该这么做。由于多种原因,这样做并不好,而且在实践中也不是很有用。