0

zu bauen Ich arbeite an einer Website, die Google-Charts hat, enthält die Website JavaScript Ajax, die Daten aus Web-Service und soll Objekt, das an Diagramm übergeben werden soll.Ist es möglich, dynamische benutzerdefinierte Objekt in Javascript

Wenn es möglich ist, dieses benutzerdefinierte Objekt zu erstellen, würde es Ihnen etwas ausmachen, mir ein Beispiel zu geben, wie dies zu tun ist, mein Problem ist zu verstehen, wie genau ich es aus benutzerdefinierten Werten konstruieren (sagen wir Array).

Das Objekt sieht aus wie

chart_data.addRows([ 
     ['1', 1000, 400, 200], 
     ['2', 1000, 460, 200], 
     ['3', 860, 580, 200], 
     ['4', 1030, 540, null], 
     ['5', null, 540, null] 
    ]); 

Ihre Hilfe sehr geschätzt wird.

Antwort

1

Der Funktionsaufruf verwendet ein Array (von Arrays), kein Objekt. Sie könnten das Array zum Beispiel so bauen, und die Funktion aufrufen, die Variable:

var arr = []; 
arr.push(['1', 1000, 400, 200]); 
arr.push(['2', 1000, 460, 200]); 
arr.push(['3', 860, 580, 200]); 
arr.push(['4', 1030, 540, null]); 
arr.push(['5', null, 540, null]); 

chart_data.addRows(arr); 

Jedes der Arrays in der Anordnung auch dynamisch aufbauen könnte:

var arr1 = []; 
arr1.push('1'); 
arr1.push(1000); 
arr1.push(400); 
arr1.push(200); 
arr.push(arr1); 
+0

Danke für das Beispiel, das ich es versuchen werde. – Dmitris

1

Sie dynamisches Objekt bauen wie diese

var ob = new Object(); 
ob.property1 = 'value1'; 
ob.property2 = 'value2'; 

Und lassen Sie uns sagen, dass Sie den Namen von Eigenschaften zur Laufzeit nicht kennen, können Sie versuchen, diese auch

var ob = new Object(); 
for(var i = 0; i< 3; i++) ob['property'+i] = value[i]; 

und greifen Sie wie ob.property1 oder ob.property2

+0

Leider Eigenschaften, die mir nicht bekannt sind. – Dmitris

+0

Was genau wollen Sie in neuen dynamischen Objekt .. Sie wollen neue Methoden für das Objekt? das ist auch erlaubt .. – Kamal

Verwandte Themen