Q:

Object property constants in ECMAScript?

I've seen some proposals for ECMAScript Harmony in terms of being able to specify constants with the keyword const. However, it seems to be only available in block scopes (i.e., FunctionBody and Program). Is there a way to define constants as an object property (imagine myObj.STATUS_OK)?
I guess the suggested way is to use properties via Object.definePropert(y/ies), but that does not seem very convenient, now is it?

A:

It seems that const is more related to environment frame bindings, and is thus a slightly different beast to objects and properties.
That said, on globals that's exactly what it does:
const a = 10;
Object.getOwnPropertyDescriptor(window, "a");
/*
   Object:
      configurable: true,
      enumerable: true
      value: 10
      writable: false
*/

If you're looking for shorthand then you can make a pretty simple macro.
In your case, an alternative would be to have a get-only value:
var myObj = {
   get STATUS_OK(){ return 42; }
};

