在Javascript中创建对象列表


97

是否可以在中创建list您自己的对象Javascript?这是我要存储的数据类型:

Date : 12/1/2011   Reading : 3   ID : 20055    
Date : 13/1/2011   Reading : 5   ID : 20053    
Date : 14/1/2011   Reading : 6   ID : 45652

2
列表不适用于javascript。它将在控制台中显示“列表未定义”错误。您可以为此尝试Array,Set,Map等。
暗物质

Answers:


145
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);

1
我将每个项目分别添加到列表中,这样做的正确语法是什么?
user517406 2011年

3
我认为这就像是list [list.length] = {date:'11 / 11/1999',reading:3,id = 1}; 问候
Marwan

42
@ user517406,例如:var list = []; list.push({ date: '12/1/2011', reading: 3, id: 20055 });
达林·迪米特洛夫

53

动态建立对象列表

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/ 参见控制台中的输出


16

也许您可以创建一个像这样的数组:

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

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

7

摆脱了tbradley22的回答,但.map改为使用:

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

-5

所以,我习惯于

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

这就是它的工作方式,但对您而言可能有所不同,我建议您观看脚本API上的一些Unity教程。


5
列表不适用于javascript。它将在控制台中显示“列表未定义”错误。
暗物质

1
Unity脚本!= Javascript。
史蒂夫·史密斯
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.