Размеры окна с учетом прокрутки в JavaScript

Давайте получим размеры окна с учетом прокрученной части. К сожалению, удобного способа, работающего во всех браузерах - нет. Ниже приводятся работающие решения. Вникать в них не стоит, просто используйте.

Высота с учетом прокрученной части:

javascriptlet scrollHeight = Math.max(
  document.body.scrollHeight, document.documentElement.scrollHeight,
  document.body.offsetHeight, document.documentElement.offsetHeight,
  document.body.clientHeight, document.documentElement.clientHeight
);

console.log(scrollHeight);

Ширина с учетом прокрученной части:

javascriptlet scrollWidth = Math.max(
  document.body.scrollWidth, document.documentElement.scrollWidth,
  document.body.offsetWidth, document.documentElement.offsetWidth,
  document.body.clientWidth, document.documentElement.clientWidth
);

console.log(scrollWidth);
Задание 1

По нажатию на кнопку выведите высоту с учетом прокрученной части.

Задание 2

По нажатию на кнопку выведите ширину с учетом прокрученной части.

Задание 3

По нажатию на кнопку выведите высоту спрятанной под прокруткой части.