clarification of javascript macros