Поўны перахоп AJAX памылак у JavaScript

Проміс, які вяртае fetch, завяршаецца з памылкай, толькі калі адбылася памылка сеткі. Калі ж сервер вярнуў адказ са статусам 404 або 500, то проміс будзе завершаны паспяхова, але пры гэтым статус ok будзе ўсталяваны ў false.

Давайце перахопім абодва тыпы памылак:

javascriptbutton.addEventListener('click', function() {
  let promise = fetch('/ajax.html')
  .then(
    response => {
      if (response.ok) {
        return response.text();
      } else {
        console.log('дрэнны статус адказу');
        return '';
      }
    },
  ).then(
    text => {
      console.log(text);
    }
  ).catch(
    error => {
      console.log(error);
    }
  );
});

Зробім так, каб памылка, звязаная з дрэнным статусам HTTP адказу, таксама лавілася блокам catch. Для гэтага пракінем яе далей праз throw:

javascriptbutton.addEventListener('click', function() {
  let promise = fetch('/ajax.html')
  .then(
    response => {
      if (response.ok) {
        return response.text();
      } else {
        throw new Error('дрэнны статус адказу');
      }
    },
  ).then(
    text => {
      console.log(text);
    }
  ).catch(
    error => {
      console.log(error);
    }
  );
});
Задание 1

Выведзіце тэкст старонкі, калі запыт быў паспяховым, і памылку, калі нешта пайшло не так.