это не лучший вариант) объект мой был изначально из 500к свойств, а этот код даже при 4 к свойств считает в 10 раз дольше, чем твой самый первый способ! Если делаю объект большим, то "Maximum call stack size exceeded" (((
второй вариант дает такие же цифры) да и результат приходится ощутимо ждать всего на 4 тыс. свойств. А твой первый вариант на пол миллиона свойств считал доли секунды)