2015-12-10 128 views
-2

我有一个数组,我想变成一个对象。我想将对象的每个键和值都设置为我当前所在数组的索引值。如何将数组转换为对象?

$('#MoveRight').click(function() { 
     var selectedUsers = $('#allUsersDD').val(); 
     //turn to object 
    }); 

selectedUsers是一个数组

+4

阵列** **被一个对象。 –

+2

这可能有所帮助:http://stackoverflow.com/questions/4215737/convert-array-to-object –

+0

@ PM77-1是的,我知道。但是,你如何表达这个标题呢? –

回答

1

你可以用一个循环做到这一点。

var usersObj = {}; 
for (var k = 0; k < selectedUsers.length; k++) { 
    usersObj[k] = selectedUsers[k]; 
} 
+0

这也将密钥设置为1,2等等。然而,我已经改变了我的代码,所以没关系 –

1

如果你有很多键值对的一个JS数组,你可以将它转换是这样的:

var array = [{key:"one",value:1},{key:"two",value:2},....] 

var newObject = {} 

for(var i = 0; i < array.length; i++){ 
    newObject[array[i].key] = array[i].value; 
} 
0
$('#MoveRight').click(function() { 
    var selectedUsers = $('#allUsersDD').val(); 
    var obj = {}; 
    $(selectedUsers).each(function (i, v) { 
     var key = '_' + i; 
     obj.key = v; 
    }); 
}); 
+0

这也将对象的每个键设置为数组的索引。在我的问题中,我要求对象的键和值是我循环访问的数组的值 –

相关问题