2015-06-24 5 views
1

У меня есть JSON массив, как:Javascript, JSON - Создать таблицу

[{ 
    "name": "abc", "month":"Jan-15","value":xyz 
},{ 
    "name": "bcd", "month":"Jan-15","value":xyz 
},{ 
    "name": "abc", "month":"Feb-15","value":xyz 
},{ 
    "name": "bcd", "month":"Feb-15","value":xyz 
}] 

Количество "имен" может меняться от месяца к месяцу. Но нет. «месяца» остается неизменным.

Мне нужно создать табличный обзор:

Name Jan-15 Feb- 15 ...... Dec-15 
abc value  value ..... value 
bcd value  value ..... value 

Я новичок в JavaScript, и я действительно не знаю, как получить значение в правых столбцах и строках. Хотя я знаю, как динамически добавлять строки. Должен ли я выбрать «чистое» решение или лучше проверить структуру, например, например? AngularJS?

Редактировать: Я извлек «месяцы» и «имена» из массива, и мне нужно сделать что-то вроде: value = проверить это конкретное «имя» в массиве и вернуть соответствующее «значение».

Как написать это в JS?

+0

Если это только за один стол, угловой кажется излишним. Если вы будете использовать углы для другого кода, это хорошая структура. Для этой таблицы вы можете использовать array.filter и array.map, чтобы получить массив в правильном формате. – Shilly

+0

jQuery может быть полезна, если у вас есть элемент 'table' и вы хотите заполнить его данными, чтобы отобразить данные, но вы должны иметь возможность реструктурировать и получать доступ к вашим данным с помощью raw JS. Как и выше, загрузка всей библиотеки за одну небольшую функциональность является излишним. Если вам нужна библиотека вообще, круто, иначе вы можете просто использовать источник библиотеки, чтобы выяснить, как она это делает, и реализовать свою собственную локальность. –

+0

Спасибо, приятель. , – Qben

ответ

0

Это зависит от формы вашего объекта данных. Если у вас есть объект массива или строковый объект, вам нужно использовать JSON.parse, чтобы иметь возможность использовать индексы и значения. Если да, то вам нужно будет иметь JSON.parse (data) .name, чтобы вернуть ваши значения. JSON.parse (data) .month для ваших месяцев и, конечно же, JSON.parse (data) .value для возврата значений xyz. Если ваши данные уже являются объектами JSON, вы просто будете использовать data.name, data.month и data.value соответственно. Эти ссылки могут помочь вам разобраться в основных принципах, следовать синтаксису и примерам. http://www.w3schools.com/js/js_json.asp http://www.w3schools.com/json/json_eval.asp http://www.json.org/js.html и https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/JSON/parse

+0

Большое спасибо. Я проверю эти ссылки – Qben

+0

Привет, ребята, очень спасибо. Но эти ссылки мне не очень помогли. В основном ничего нового. Нет подсказок для меня, чтобы решить эту проблему? Спасибо – Qben

+0

Можете ли вы предоставить скрипку для чего именно вам нужно? Существует ли конкретная структура, которую вы используете? Где и как именно инициализируется ваш JSON? Также как именно вы хотите, чтобы ваш табличный обзор был? Похоже, что у вас есть несколько значений в каждом месяце, однако ваш JSON-файл имеет одно значение за каждый месяц. – CookieMonster