I tend to agree that only let should be used in es6.  AFIK redeclaring a "set", generates an error (which is good)  while with var you simply override the value though strict mode takes care of hat in es5 too).