Unter der Maßgabe, dass exist einen boolschen Wert hat, was hier eigentlich beabsichtigt war, ist es dasselbe.
Wie gesagt, in diesem konkreten Fall ist es austauschbar, im Allgemeinen nicht.
Wenn man den Fall einschließt, dass es auch undefined sein könnte, ist die Kurzschreibweise sogar günstiger, weil sie keinen Javascript-Error wirft.
Weder if (foo) noch if (foo == true) werfen eine Exception, wenn foo eine deklarierte Variable mit dem Wert undefined ist. Beide werfen einen ReferenceError, wenn der Identifier in der Scope Chain nicht aufgelöst werden konnte.
Mathias