Appealing to C - the land of undefined behavior - as a paragon of logic seems like a strange authority to reach for.
wiseowise
The point is that this is a well-defined (not pun intended) behavior that exists within C, C++, Python, Ruby and probably a handful more popular languages. This set pretty much constitutes like 70%(?) of mainstream languages. Yet only JS gets shit thrown its way in this thread.