2011-05-03 105 views
60

是否有可能在Javascript中創建自己的對象列表?這是我想存儲的數據的類型:在Javascript中創建對象列表

日期:2011/12/1 讀:3 ID:20055

日期:13/1/2011 讀:5 ID:20053

日期:14/1/2011 讀:6 ID:45652

回答

99
var list = [ 
    { date: '12/1/2011', reading: 3, id: 20055 }, 
    { date: '13/1/2011', reading: 5, id: 20053 }, 
    { date: '14/1/2011', reading: 6, id: 45652 } 
]; 

,然後訪問它:

alert(list[1].date); 
+0

我會將每個項目單獨添加到列表中,那麼正確的語法是什麼? – user517406 2011-05-03 11:44:34

+2

我認爲它會是這樣的 list [list.length] = {date:'11/11/1999',閱讀:3,id = 1}; Regards – Marwan 2011-05-03 12:13:14

+28

@ user517406,像這樣:'var list = []; list.push({date:'12/1/2011',閱讀:3,id:20055});'。 – 2011-05-03 12:22:39

29

動態建立的對象列表

var listOfObjects = []; 
var a = ["car", "bike", "scooter"]; 
a.forEach(function(entry) { 
    var singleObj = {} 
    singleObj['type'] = 'vehicle'; 
    singleObj['value'] = entry; 
    listOfObjects.push(singleObj); 
}); 

這裏的工作示例http://jsfiddle.net/b9f6Q/2/ 看到控制檯輸出

+0

非常好的答案。這和c#列表一樣清晰。 – 2016-06-22 07:08:55

-1

也許你可以創建一個這樣的數組:

 var myList = new Array(); 
    myList.push('Hello'); 
    myList.push('bye'); 

    for (var i = 0; i < myList .length; i ++){ 
     window.console.log(myList[i]); 
    } 
4

去關閉tbradley22的回答,但使用.map代替:

var a = ["car", "bike", "scooter"]; 
a.map(function(entry) { 
    var singleObj = {} 
    singleObj['type'] = 'vehicle'; 
    singleObj['value'] = entry; 
    return singleObj; 
}); 
1

所以,我已經習慣了使用

var nameOfList = new List("objectName", "objectName", "objectName") 

這是怎麼對我的作品,但可能是你不同,我建議看一些統一教程上的腳本API。