if (!sessionStorage.isVisited) {
doSomething();
sessionStorage.isVisited = true;
}
OPTIONS
выполняется отдельно, после него POST
.const request = new Request('http://192.168.88.3:9090/API/V0.1/schedule_query/ESIAFindAccount/', {
method: 'POST',
headers: new Headers({
'Content-Type': 'application/json',
'X-Auth-Token': 'xxx'
}),
body: JSON.stringify({
RoutingCode: 'TESIA',
SnilsOperator: '135-419-238 52',
ra: '1000321282',
lastName: 'Тестов',
firstName: 'Тест',
middleName: 'Тестович',
doc: {
type: 'RF_PASSPORT',
series: '1111',
number: '111111'
},
mobile: '+7(920)4021351',
snils: '229-785-346 20'
})
});
fetch(request).then(response => response.json()).then(console.log);
|-|-||-|-|-|-|
, |
- это наш разделитель. Алгоритм идет слева направо, таким образом, когда он найдет первый элемент, в итоговый массив он положит всё, что левее этого символа, то есть пустую строку. Но тогда почему между слов встречается всего 1 «разрыв»? Это возникает из-за того, что разделитель встречается дважды. С последним элементом происходит схожий алгоритм действий, что и с первым, только в данном случае, в итоговый массив попадет оставшаяся правая часть. const numbers = [1, 2, 4, 8];
. Мы проходим по нему циклом for
, при этом заранее не сохраняя длину массива, таким образом, если удалять в цикле каждый раз текущий индекс, то при следующей итерации будет пересчитано условие i < arr.length
, но 1 элемент то мы удалили, и следовательно цикл завершится раньше. Чтобы этого не произошло, i
уменьшают на 1. В тот момент, когда удаляется элемент, i
при следующей итерации «остается на месте». <iframe src="..."></iframe>
, причем, при нажатии ссылок внутри него, они должны открываться «снаружи» (в основном окне браузера). Если так, то необходимо ссылкам добавить target="_top"
или target="_parent"
.