Правильный ответ на 2017 год:
document.documentElement.getBoundingClientRect().height
В отличие от document.body.scrollHeight
этот метод учитывает поля тела. Он также дает дробное значение высоты, которое может быть полезно в некоторых случаях