在JS中,如何使用字符串来定义JS对象参数?

时间:2012-04-18 17:44:54

标签: javascript

我有一个以这种方式定义的函数:

var myObject = new Object();

    function myFunction(someString){

         myObject.someString= 0;

    }

问题是someString被视为字符串someString,而不是该变量的值。

因此,在我使用不同的someString多次使用该函数之后,我想获得一个包含每个someString的所有值的对象。

但是当我循环通过那个对象时 我得到的唯一结果是someString : 0

我想得到:

John : 0
James : 0
Alex : 0 etc....

我该怎么做?非常感谢提前

2 个答案:

答案 0 :(得分:4)

您可以使用关联数组方法:

var someString = 'asdf';

myObject[someString] = 0; // {asdf: 0}
myObject['foo'] = 'bar';

您基本上可以使用任何字符串来检索您的方法/参数。

var i = 1;
myObject['test' + i] = i + 1; // gives us {test1: 2}

答案 1 :(得分:1)

试试这个

var myObject = new Object();
    function myFunction(someString){
        myObject[someString]= 0;
    }