Форум программистов, компьютерный форум, киберфорум
JavaScript для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.59/29: Рейтинг темы: голосов - 29, средняя оценка - 4.59
0 / 0 / 0
Регистрация: 17.11.2016
Сообщений: 34
1

Получить данные из json

04.12.2017, 12:47. Показов 5525. Ответов 4

Author24 — интернет-сервис помощи студентам
Как получить последние 7 значений "wd" для выбранного города? Всего значений для каждого города может быть разным.
JSON
1
{"Moscow":{"2017-11-05":{"wd":92,"lv":0},"2017-11-06":{"wd":931,"lv":2},...},"Kazan":{"2017-10-05":{"wd":282,"lv":0},"2017-10-06":{"wd":27,"lv":3},...}}
Полагаю что нужно циклом проверять в условии нужный мне город и извлекать данные, но как реализовать не пойму.
Javascript
1
2
3
var json = JSON.parse(...);
var gorod = 'Kazan';
for (var b = 0; b < json.length; b++) { if(){} }
или
Javascript
1
2
3
4
var str = '{json}';
var json = JSON.parse(str, function(key, value) {
  if (key == 'gorod') {}
});
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
04.12.2017, 12:47
Ответы с готовыми решениями:

Как получить данные из Json
Как получить значение из &quot;wd&quot;? {&quot;status&quot;:1,&quot;pogoda&quot;:{&quot;Moscow (2)&quot;:{&quot;wd&quot;:7,&quot;lv&quot;:0},&quot;Kazan (1...

Можно ли через ajax получить json данные по url?
Как через ajax получать данные с других урлов? Вот так, это пытаюсь сделать я=))) Подскажите,...

Получить данные json через POST-запрос и вывести в графике highcharts
Здравствуйте, подскажите плис. В JS практически ничего не знаю. Есть API в котором написано...

JSON, преобразовать данные
Есть JSON-объект: { &quot;22&quot; : , &quot;34&quot; : } нужно преобразовать к виду: {

4
the hardway first
Эксперт JS
2461 / 1836 / 906
Регистрация: 05.06.2015
Сообщений: 3,603
04.12.2017, 13:09 2
Лучший ответ Сообщение было отмечено temochka как решение

Решение

Мало данных. Что из себя представляет объект с данными по городу? Ключи - это только даты или еще есть какие-то? Что значит последние семь? В хронологическом порядке или по мере вставки данных в объект? Гарантированно ли, что даты "вставляются" в объект в хронологическом порядке? И т. д. и т. п.

Пусть будут "идеальные условия", объект состоит только из дат, даты идут в хронологическом порядке и надо получить информацию за последние 7 (или меньше) дат:
Javascript
1
2
3
4
var city = data['Kazan'];
var wd = Object.keys(city).slice(-7).map(function (k) {
    return city[k].wd;
});
1
0 / 0 / 0
Регистрация: 17.11.2016
Сообщений: 34
04.12.2017, 13:32  [ТС] 3
Спасибо, то что нужно, условия такие же как вы и предположили.

Добавлено через 9 минут
А как допустим среднее значение за последние 3 дня посчитать?
0
the hardway first
Эксперт JS
2461 / 1836 / 906
Регистрация: 05.06.2015
Сообщений: 3,603
04.12.2017, 13:47 4
Ну уж вы чёт совсем обленились у вас есть массив со значениями, как посчитать среднее? Сложить и разделить на количество.
Javascript
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
function lastWd (city, count) {
  if (count > 0) count = 0 - count;
 
  return Object.keys(city)
    .slice(count)
    .map(function(k) {
      return city[k].wd;
    });
}
 
function avg (ar) {
  return (ar.reduce(function(sum, v) {
    return sum + v;
  }) / ar.length).toFixed(2);
}
 
var city = data['Kazan'];
var wd = lastWd(city, -7);
console.log(wd, avg(wd));
1
0 / 0 / 0
Регистрация: 17.11.2016
Сообщений: 34
04.12.2017, 13:58  [ТС] 5
Спасибо, математику понимаю, но такой код написать для меня слишком сложно.
0
04.12.2017, 13:58
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
04.12.2017, 13:58
Помогаю со студенческими работами здесь

Не получается подгрузить данные с json
В проекте 2 файла: index.html и users.json, при запуске данные не выводятся. В чем ошибка?...

Как отсортировать данные JSON?
Добрый вечер. Сервер отправляет отсартированный массив по убыванию по посредством JSON.

Отобразить данные из объекта JSON
Привет всем! Есть задание : создать HTML-страницу и написать код JavaScript, который будет...

Записать данные в JSON-массив
Здравствуйте. Интересует следующее. Можно ли как то в массив JSON заносить данные не...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru