Всем привет. Вообщем-то, уже пару месяцев изучаю JS, изучил основные методы в JQuery и маленько AJAX, но в самом JS как-то упустил из виду Promise. Так вот, скинул препод код на практике как пример, там я заметил такую непонятную штуку как указание переменных через window, если это так можно назвать. Вообщем, можете объяснить кака работают эти куски кода с window, в каких случаях стоит так писать и стоит ли так писать вообще ?
Сорян если в пояснении налил воды, сонный мальца. Заранее благодарю.
window. sheremet=()=>{
if (window.time.length==0){
return false;
}else{
console.log(new Map(window.time));
let promise = new Promise((resolve, reject) => {
document.querySelector('.btn_practice.add_record').click();
setTimeout(() => {
// переведёт промис в состояние fulfilled с результатом "result"
resolve("result");
}, 1000);
});
promise
.then(
result => {
let state=true;
document.querySelector("#date_block > input[type=text]").value=window.time[0][0];
document.querySelector("#date_block > a").click();
setTimeout(() => {
return state;
}, 1000);
},
error => {
// вторая функция - запустится при вызове reject
alert("Rejected: " + error); // error - аргумент reject
}
)
.then(state=>{
setTimeout(() => {
document.querySelector('#practice_diary_filter tr:last-child .ico.edit').click();
return true;
}, 1000);
})
.then(state=>{
setTimeout(() => {
document.querySelector('#practice_diary_filter tr:last-child textarea[name="text"]').value=window.time[0][1];
window.time.shift();
document.querySelector('#practice_diary_filter tr:last-child .ico.edit').click();
window.sheremet();
}, 1000);
});
}
}
window.time=[
["27.11.2020",`Поиск Основных правил охраны труда и техники безопасности техника-программиста на сайте (ссылка на сайт: )
(См. Приложение А).
По данному материалу был создан плакат для отдела IT.
(см. Приложение А).
По данному материалу была создана презентация (См. диск) (имя папки имя файла)`],
["28.11.2020",`Анализ сильных и слабых сторон проекта, создание предметной области.
(см. Приложение Б)`],
["30.11.2020",`Создания диаграммы классов и диаграммы объектов по данному заданию.
Создание документации по создания ПО для “Учета нарушений правил ПДД”(см. Приложение В)`],
["01.12.2020",`Составление диаграммы прецендентов и диаграммы последовательностей относительно технического задания. (
Оформление внешней спецификации к задаче, на основе технического задания Учета нарушений правил ПДД (см. Приложение Г)`],
["02.12.2020",`
Создания диаграммы состояния
Создание “Пояснительной записки” Учета нарушений правил ПДД (см. Приложение Д)`],
["03.12.2020",`Написание основы ПО:, написание главной страницы.
Создания скрипта для отправки данных в базу данных
(см. Приложение Е)`],
["04.12.2020",`Создание страницы поиска информации о пользователе.
Написание скрипта для поиска информации в базе данных
(см. Приложение Ж)`],
["05.12.2020",`Создание страницы админ панели и написание функций администрирования и написания их графического оформления.
(см. Приложение З)`],
["06.12.2020",`Написание кода для обратной связи с пользователем сайта и написания графического оформления.
(см. Приложение З)
`],
["07.12.2020",`Написание кода на HTML+PHP. для обратной связи с администрации(см. Приложение И)`],
["08.12.2020",`Установка виртуальной машины на системе Ubuntu.; интеграция ОС как внешнего сервера
(см. Приложение К)
`],
["09.12.2020",`Написание кода на NodeJS и JS.
Проверка кода на работоспособность.
Интеграция модулей NodeJS, Express, Git, NPM,
(см. Приложение К)`],
["10.12.2020",`Написание тестовых модулей на проверку работы основного проекта.
(см. Приложение Л)`],
];
window. sheremet();