довольно просто и легко ( внутренне они оба преобразуются в строки ), потому что в Javascript
Если объект сравнивается с числом или строкой, JavaScript пытается вернуть значение по умолчаниюзначение для объекта.Операторы пытаются преобразовать объект в примитивное значение, значение String или Number, используя методы объектов valueOf и toString.
, поэтому при сравнении обоих объектов оба объекта преобразуются в строку с использованием внутреннего метода Tostring
a.toString()
"[object Object]"
b.toString()
"function () { }"
, следовательно, b будет больше, чем (более крупная строка), поэтому b> a является истинным