JavaScript is not EL. EL runs on the server. JavaScript runs on the client. They are 2 different languages, with only superficial syntactical similarities. There is zero benefit - or more accurately, negative benefit - to avoiding EL in JSF. It's an integral part of JSF, and in modern-day
J2EE servers the support is built into the appserver itself, even for minimalist servers like
Tomcat.
Also, there's a BIG difference between the "$" EL dereferencing operator and the "#" EL dereferencing operator. "$" is rarely used in JSF because of that.
The secret of how to be miserable is to constantly expect things are going to happen the way that they are "supposed" to happen.
You can have faith, which carries the understanding that you may be disappointed. Then there's being a willfully-blind idiot, which virtually guarantees it.