Javascript字符串对象

时间:2009-10-27 15:27:59

标签: javascript

我有两个字符串,一个是键,一个是值,我想把它变成一个对象并在循环中连接。例如:

var data = {};
// loop starts here
  var a_key = 'element';
  var a_val = 'value';
  var a_obj = // somehow this equals { "element":"value" }
  data = data.concat(a_obj);
// loop ends here

我只是不确定如何从这两个字符串创建一个对象!任何帮助表示赞赏

4 个答案:

答案 0 :(得分:1)

你应该可以这样做:

var a_obj = new Object();
a_obj[a_key] = a_val
不,不是吗? (我现在无法对此进行测试,所以请用一点盐来治疗......)

答案 1 :(得分:1)

在没有密钥的情况下将某些东西连接到一个对象是没有意义的。也许data应该是一个对象数组?

data = [];
a_obj = {};
a_obj[a_key] = a_val;
data += a_obj;

答案 2 :(得分:1)

var a_key = 'key';
var a_val = 'value';
var a_obj = {};
a_obj[a_key] = a_val;

注意:

var a_obj = {}

var a_obj = new Object();

是相同的,但{}感觉更清洁,并由Douglas Crockford's JSLint推荐。

为了将对象附加到其他对象,您可以执行类似......(未测试)

的操作
for (var key in a_obj) {
    if (a_obj.hasOwnProperty(key)) { // avoid inherited properties
        data[key] = a_obj[key];
    }
}

答案 3 :(得分:0)

var a_key ='element';

var a_val ='value';

var a_obj = {a_key:a_val};