JS对象中的变量名称有问题吗?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JS对象中的变量名称有问题吗?相关的知识,希望对你有一定的参考价值。

我定义了一个可以获得用户输入的变量:

var input = USER_INPUT;

然后,我创建了一个对象,它将使用此input作为对象内的变量名称:

var obj = { input: Car.newCar(...)}

然后,我尝试访问obj[input],但它返回给我undefined。是这样在javascript中,我不能将变量用作对象的变量名吗?

如果我想定义一个变量名和变量值变化的对象,我该怎么办?

答案

对不起,重新阅读问题后改变了我的回答

var USER_INPUT = 'something';
var obj = {};
obj[USER_INPUT] = 'value';

obj.something ; //# => value
obj['something'] ; //# => value

obj[USER_INPUT]; //# => value
另一答案

所以我想你希望商店在输入本身命名的键下输入。 您可以使用Car.newCar()方法分配[]返回的值:

var input = "some text";
var obj = {};

obj[input] = Car.newCar();

以上是关于JS对象中的变量名称有问题吗?的主要内容,如果未能解决你的问题,请参考以下文章

VSCode自定义代码片段9——JS中的面向对象编程

如何创建片段以重复变量编号中的代码行

JS中for...in 语句用于对数组或者对象的属性进行循环操作吗?

VSCode自定义代码片段12——JavaScript的Promise对象

VSCode自定义代码片段12——JavaScript的Promise对象

如何清除 THREE.JS 场景