Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 08.10.2020, 18:30
Новичок на форуме
Отправить личное сообщение для Tony_Gabrial Посмотреть профиль Найти все сообщения от Tony_Gabrial
 
Регистрация: 08.10.2020
Сообщений: 3

Помогите разобраться с JS, циклы и условия
"data": {
"Contract": {
"19654668": {
"DateIns": "2019-11-20",
"Amount": 53999,
"Dogovor": "54985115555",
"ProgramName": "Стол"
},
"14898668": {
"DateIns": "2020-10-05",
"Amount": 7345,
"Dogovor": "5498511553333",
"ProgramName": "Кресло"
},
"19652368": {
"DateIns": "2020-10-05",
"Amount": 9555,
"Dogovor": "549851155553232",
"ProgramName": "Стол"
},
"7774668": {
"DateIns": "2020-10-25",
"Amount": 9555,
"Dogovor": "549851155551232",
"ProgramName": "Стол и кресло"
}
},
"ref": "200822329841A8C7",
"date_creat": "2020-08-26",
}


Помогите пожалуйста написать скрипт.

Условие:
Если мы находим в каждом объекте data.contract.[key].ProgramName, значение которого равно "Стол" или "Кресло" то сверяем дату "DateIns" с "date_creat":

- Если DateIns >= date_creat, то создавать объект "data.attracted = "Y";
- Если DateIns < date_creat, то создаем обект "data.attracted = "N";

Если полных совпадений в поле ProgramName "Стол" или "Кресло" не найдено, то проставляем "data.attracted = "K"



РЕМАРКА === Необходимо настроить полное совпадение строки, так как, могут попадаться варианты строки как "Стол и кресло" - а нам такие варианты не нужны.
Ответить с цитированием
  #2 (permalink)  
Старый 08.10.2020, 20:19
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 12,990

Сообщение от Tony_Gabrial
то создавать объект "data.attracted = "Y";
Это не объект, а свойство объекта data будет. А множество свойств с одним и тем же именем быть не может, то есть, значение этого свойства будет постоянно перезаписываться и примет значение последней проверки. Так что что и где создать?
Ответить с цитированием
  #3 (permalink)  
Старый 08.10.2020, 20:28
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,064

Tony_Gabrial,
<script>
let obj = {"data": {
"Contract": {
"19654668": {
"DateIns": "2019-11-20",
"Amount": 53999,
"Dogovor": "54985115555",
"ProgramName": "Стол"
},
"14898668": {
"DateIns": "2020-10-05",
"Amount": 7345,
"Dogovor": "5498511553333",
"ProgramName": "Кресло"
},
"19652368": {
"DateIns": "2020-10-05",
"Amount": 9555,
"Dogovor": "549851155553232",
"ProgramName": "Стол"
},
"7774668": {
"DateIns": "2020-10-25",
"Amount": 9555,
"Dogovor": "549851155551232",
"ProgramName": "Стол и кресло"
}
},
"ref": "200822329841A8C7",
"date_creat": "2020-08-26",
}};
let date_creat = obj.data.date_creat;
for(let item of Object.values(obj.data.Contract)) {
let attracted = "K";
if(["Стол", "Кресло"].includes(item.ProgramName)) {
attracted = item.DateIns >= date_creat ? "Y" : "N"
}
item.attracted = attracted;
}
document.write(`<pre>${JSON.stringify(obj, "", 4)}</pre>`)
</script>
Ответить с цитированием
  #4 (permalink)  
Старый 08.10.2020, 20:30
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,064

Tony_Gabrial,
Пожалуйста, отформатируйте свой код!

Для этого его можно заключить в специальные теги: js/css/html и т.п., например:
[html run]
... минимальный код страницы с вашей проблемой
[/html]

О том, как вставить в сообщение исполняемый javascript и html-код, а также о дополнительных возможностях форматирования - читайте http://javascript.ru/formatting.
Ответить с цитированием
  #5 (permalink)  
Старый 13.10.2020, 22:16
Новичок на форуме
Отправить личное сообщение для Tony_Gabrial Посмотреть профиль Найти все сообщения от Tony_Gabrial
 
Регистрация: 08.10.2020
Сообщений: 3

Большое всем спасибо
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Помогите разобраться с галереей на JS xxxfff Общие вопросы Javascript 1 05.12.2015 13:58
Помогите разобраться с галереей на JS xxxfff Общие вопросы Javascript 0 04.12.2015 18:11
Получение ответа сервера через iframe и xhr. Помогите разобраться. Arconas AJAX и COMET 0 26.02.2013 10:38
Помогите пожалуйста разобраться Kupu4 Ваши сайты и скрипты 0 21.01.2010 10:44
Помогите разобраться с галереей IMAGIN yana_studio Общие вопросы Javascript 4 12.12.2009 17:24