wake-up-neo.com

so erstellen Sie ein JSON-Objekt Node js

ich versuche, ein JSON-Objekt in Node js ohne Erfolg zu erstellen. Zum Beispiel, um ein Objekt wie das folgende zu erstellen: 

{ 'Orientation Sensor': 
   [ { sampleTime: '1450632410296',
       data: '76.36731:3.4651554:0.5665419' },
     { sampleTime: '1450632410296',
       data: '78.15431:0.5247617:-0.20050584' } ],
  'Screen Orientation Sensor': 
   [ { sampleTime: '1450632410296',
       data: '255.0:-1.0:0.0' } ],
  'MPU6500 Gyroscope sensor UnCalibrated': 
   [ { sampleTime: '1450632410296',
       data: '-0.05006743:-0.013848438:-0.0063915867},
     { sampleTime: '1450632410296',
       data: '-0.051132694:-0.0127831735:-0.003325345'}]}

aber auf dynamische Weise ohne Wissen über die Größe jedes Artikels . gibt es so etwas für Node js . vielen Dank 

14
daniel the man

Ich glaube, Sie suchen nach einer Möglichkeit, Arrays als Objektwerte zu verwenden:

var o = {} // empty Object
var key = 'Orientation Sensor';
o[key] = []; // empty Array, which you can Push() values into


var data = {
    sampleTime: '1450632410296',
    data: '76.36731:3.4651554:0.5665419'
};
var data2 = {
    sampleTime: '1450632410296',
    data: '78.15431:0.5247617:-0.20050584'
};
o[key].Push(data);
o[key].Push(data2);

Dies ist Standard-JavaScript und nicht etwas NodeJS-spezifisch. Um es in eine JSON-Zeichenfolge zu serialisieren, können Sie den nativen JSON.stringify verwenden:

JSON.stringify(o);
//> '{"Orientation Sensor":[{"sampleTime":"1450632410296","data":"76.36731:3.4651554:0.5665419"},{"sampleTime":"1450632410296","data":"78.15431:0.5247617:-0.20050584"}]}'
37
paolobueno

Der JavaScript-Konstruktor Object() erstellt ein Objekt, dem Sie Mitglieder zuweisen können.

myObj = new Object()
myObj.key = value;
myObj[key2] = value2;   // Alternative
6
Dylan Kirkby

Die anderen Antworten sind hilfreich, aber der JSON in Ihrer Frage ist nicht gültig. Ich habe es formatiert, um es unten klarer zu machen. Beachten Sie das fehlende einfache Anführungszeichen in Zeile 24.

  1 {
  2     'Orientation Sensor':
  3     [
  4         {
  5             sampleTime: '1450632410296',
  6             data: '76.36731:3.4651554:0.5665419'
  7         },
  8         {
  9             sampleTime: '1450632410296',
 10             data: '78.15431:0.5247617:-0.20050584'
 11         }
 12     ],
 13     'Screen Orientation Sensor':
 14     [
 15         {
 16             sampleTime: '1450632410296',
 17             data: '255.0:-1.0:0.0'
 18         }
 19     ],
 20     'MPU6500 Gyroscope sensor UnCalibrated':
 21     [
 22         {
 23             sampleTime: '1450632410296',
 24             data: '-0.05006743:-0.013848438:-0.0063915867
 25         },
 26         {
 27             sampleTime: '1450632410296',
 28             data: '-0.051132694:-0.0127831735:-0.003325345'
 29         }
 30     ]
 31 }

Es gibt viele großartige Artikel zur Bearbeitung von Objekten in Javascript (egal ob Sie Node JS oder einen Browser verwenden). Ich schlage vor, hier ist ein guter Ausgangspunkt: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide/Working_with_Objects

0
Timmeh