2017-02-13 146 views
-1
function arrayToList (arr){ 
    var dataStructure = null; 
    for (var i = 0;i < arr.length; i++){ 
    dataStructure= {value: arr[i]}; 
    } 
    return dataStructure; 
} 
arrayToList([1,2,3]); 

我只想這個函數來創建一個這樣的對象:添加多個鍵/值對的數組對象中的JavaScript

dataStructure { 
    value: 1; 
    value: 2; 
    value: 3; 
} 

到目前爲止我的代碼不斷更新奇異值。我很確定我不會有多次「價值」(同名),但是,我嘗試將其更改爲value,value1,value2等以及失敗

先謝謝您,對不起新手問題

+1

鍵必須是唯一的! –

+0

對象中不能有多個具有相同名稱的鍵。 –

+0

謝謝你快速回復易卜拉欣!有關如何更新值名稱的任何輸入? – user3393940

回答

1

您可以在for循環之前定義對象,使用括號表示來設置對象的屬性。您還可以傳遞第二個參數來指定要連接到對象屬性的值。

function arrayToList (arr, counter) { 
 
    var dataStructure = {}; 
 
    for (var i = 0;i < arr.length; i++, counter++){ 
 
     dataStructure["value" + counter] = arr[i]; 
 
    } 
 
    return dataStructure; 
 
} 
 
var res1 = arrayToList([1, 2, 3], 1); 
 

 
var res2 = arrayToList([4, 5, 6], 4); 
 

 
console.log(res1, res2);

0

function arrayToList (arr){ 
 
    var dataStructure = {};    // data structure is initialized to an empty object 
 
    for (var i = 0; i < arr.length; i++) { 
 
     var key = "value" + i;    // generate the key (or var key = "value" + (i + 1); if you want to start with value1, value2 ...) 
 
     dataStructure[key] = arr[i];   // set the value of the key 'key' to arr[i] 
 
    } 
 
    
 
    return dataStructure; 
 
} 
 

 
var obj = arrayToList([1,2,3]); 
 

 
console.log(obj);

相關問題