Skip to content

Commit

Permalink
Правит упущенные мелочи
Browse files Browse the repository at this point in the history
  • Loading branch information
TatianaFokina authored Apr 12, 2024
1 parent 9613f26 commit 2081062
Show file tree
Hide file tree
Showing 2 changed files with 2 additions and 3 deletions.
2 changes: 1 addition & 1 deletion js/deal-with-forms/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -464,7 +464,7 @@ function onSuccess(formNode) {
}
```

Мы должны вызвать `onSuccess`, только если форма была отправлена успешно. Для этого добавим проверку на статус ответа сервера — он должен быть 200 в случае успеха (статусы ответа разобраны в [статье про HTTP протокол](/tools/http-protocol/)):
Мы должны вызвать `onSuccess`, только если форма была отправлена успешно. Для этого добавим проверку на статус ответа сервера — он должен быть 200 в случае успеха (статусы ответа разобраны в [статье про HTTP-протокол](/tools/http-protocol/)):

```js
// Вызовем её вот так
Expand Down
3 changes: 1 addition & 2 deletions js/debounce/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -233,8 +233,7 @@ const server = {

Итак, `debounce()` — это функция высшего порядка, принимающая аргументом функцию, которую надо «отложить».

Поехали. Аргументами будут функция, которую надо «откладывать», и интервал времени, спустя который следует вызывать функцию. Как результат возвращаем другую функцию. Это нужно, чтобы мы могли не менять другие части кода. Чуть позже увидим, как это помогает. В переменной `previousCall` мы храним временную метку предыдущего вызова, а в переменной текущего вызова — временную метку нынешнего момента. Это нужно, чтобы потом сравнить, когда функция была вызвана в этот раз и в предыдущий. Если разница между вызовами меньше, чем указанный интервал,
то мы очищаем таймаут, который отвечает за непосредственно вызов функции-аргумента. Обратите внимание, что мы передаём все аргументы `...args`, которые получаем в функции `perform()`. Это тоже нужно, чтобы не приходилось менять другие части кода. Если таймаут был очищен, вызова не произойдёт. Если он не был очищен, то вызовется `callee`. Таким образом, мы как бы «отодвигаем» вызов `callee` до тех пор, пока «снаружи всё не подуспокоится».
Поехали. Аргументами будут функция, которую надо «откладывать», и интервал времени, спустя который следует вызывать функцию. Как результат возвращаем другую функцию. Это нужно, чтобы мы могли не менять другие части кода. Чуть позже увидим, как это помогает. В переменной `previousCall` мы храним временную метку предыдущего вызова, а в переменной текущего вызова — временную метку нынешнего момента. Это нужно, чтобы потом сравнить, когда функция была вызвана в этот раз и в предыдущий. Если разница между вызовами меньше, чем указанный интервал, то мы очищаем таймаут, который отвечает за непосредственно вызов функции-аргумента. Обратите внимание, что мы передаём все аргументы `...args`, которые получаем в функции `perform()`. Это тоже нужно, чтобы не приходилось менять другие части кода. Если таймаут был очищен, вызова не произойдёт. Если он не был очищен, то вызовется `callee`. Таким образом, мы как бы «отодвигаем» вызов `callee` до тех пор, пока «снаружи всё не подуспокоится».

```javascript
function debounce(callee, timeoutMs) {
Expand Down

0 comments on commit 2081062

Please sign in to comment.