Or the ones that feel the language needs that functionality. I know I once did. Now, I'm not so sure if it needs it.
There is no out-of-the-box support for encapsulation as in "restricted access to object's member", but it does support encapsulation as in "an object has method properties too". Newer ECMAScript try to change that.
Actually, there is - but it isn't intuitive. It involves exploiting how scope works in js.
I'm not sure how you fit JIT into all this. I'm pretty sure you can delegate or concatenate in Java or C++ for prototype patterns. I'm pretty sure you can copy or clone instances in Java and C++.
There are no prototype patterns possible in Java or C++ because these languages cannot (well, probably more accurate to say should not - buffer overflowing is a key exploit concept) arbitrarily execute data as code.
Also, C++ doesn't JIT. In fact, Java used JIT trying to prove it outperforms C++, which is pretty lame. C++ compiles to native. This means a platform specific optimization as close to the metal as possible. JIT produces a bytecode, which is a platform-free general optimization.
Java doesn't JIT code in the manner that a JS interpreter does. The bytecode of compiled Java runs on a specialized java virtual machine. You can run C code for a 68000 processor on an x86 machine with a virtual machine - hell you can run assembler for older processors on a virtual machine if you want. This is how MAME, BZSNES and the myriad other emulators out there work.