/* * PrimaryExpression -> 'this' */ function printThisProperty(propName) { print(this[propName]); } /*=== Infinity true bar ===*/ /* 'this' */ var this_obj = { 'foo': 'bar' }; this.is_global = true; try { // global object print(this.Number.POSITIVE_INFINITY); } catch (e) { print(e.name); } try { // global object printThisProperty('is_global'); } catch (e) { print(e.name); } try { // forced binding printThisProperty.call(this_obj, 'foo'); } catch (e) { print(e.name); }