Erstellen einer Liste von Objekten in Javascript

97

Ist es möglich, listeigene Objekte in zu erstellen Javascript? Dies ist die Art von Daten, die ich speichern möchte:

Date : 12/1/2011   Reading : 3   ID : 20055    
Date : 13/1/2011   Reading : 5   ID : 20053    
Date : 14/1/2011   Reading : 6   ID : 45652
user517406
quelle
2
List funktioniert nicht mit Javascript. In der Konsole wird der Fehler "Liste nicht definiert" angezeigt. Zu diesem Zweck können Sie Array, Set, Map usw. ausprobieren.
Dunkle Materie

Antworten:

144
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 }
];

und dann darauf zugreifen:

alert(list[1].date);
Darin Dimitrov
quelle
1
Ich würde jedes Element einzeln zur Liste hinzufügen. Was wäre die richtige Syntax, um das zu tun?
user517406
3
Ich denke, es wäre wie diese Liste [list.length] = {Datum: '11 / 11/1999 ', Lesen: 3, id = 1}; Grüße
Marwan
42
@ user517406, wie folgt : var list = []; list.push({ date: '12/1/2011', reading: 3, id: 20055 });.
Darin Dimitrov
53

Liste der Objekte dynamisch erstellen

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

Hier ist ein funktionierendes Beispiel: http://jsfiddle.net/b9f6Q/2/ Ausgabe siehe Konsole

tbradley22
quelle
16

Vielleicht können Sie ein Array wie folgt erstellen:

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

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

Ich gehe von der Antwort von tbradley22 ab, benutze aber .mapstattdessen:

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

Also bin ich es gewohnt zu benutzen

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

So funktioniert es bei mir, kann aber für Sie anders sein. Ich empfehle, einige Unity-Tutorials in der Scripting-API anzusehen.

DVeen
quelle
5
List funktioniert nicht mit Javascript. In der Konsole wird der Fehler "Liste nicht definiert" angezeigt.
Dunkle Materie
1
Unity Scripting! = Javascript.
Steve Smith