0

Я работаю на веб-сайте с диаграммами Google, сайт включает в себя JavaScript Ajax, который извлекает данные из веб-службы и должен создавать объект, который будет передан в диаграмму.Возможно ли построить динамический пользовательский объект в Javascript

Если возможно построить этот пользовательский объект, не могли бы вы дать мне пример того, как это сделать, моя проблема заключается в понимании того, как именно я его создаю из пользовательских значений (скажем, массива).

Объект выглядит

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

Ваша помощь ценится.

ответ

1

Вызов функции использует массив (массивов), а не объект. Вы можете создать массив, например, как это, и вызвать функцию, используя переменную:

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

Каждый из массивов в массиве может быть также строить динамически:

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

Спасибо за пример я собираюсь попробовать. – Dmitris

1

Вы можете построить динамический объект как этот

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

и предположим, что вы не знаете имя свойства во время выполнения, вы можете попробовать это также

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

и доступ к ним, как ob.property1 или ob.property2

+0

К сожалению, свойства, которые мне неизвестны. – Dmitris

+0

Что именно вы хотите в новом динамическом объекте .. вам нужны новые методы для объекта? что также допускается .. – Kamal

Смежные вопросы