// Copyright (c) 2012 Ecma International. All rights reserved. // This code is governed by the BSD license found in the LICENSE file. /*--- es5id: 7.6.1-4-1 description: > Allow reserved words as property names by accessor function within an object. ---*/ var test; var tokenCodes = { set null(value) { test = 'null'; }, get null() { return 'null'; }, set true(value) { test = 'true'; }, get true() { return 'true'; }, set false(value) { test = 'false'; }, get false() { return 'false'; }, }; var arr = [ 'null', 'true', 'false', ]; for (var i = 0; i < arr.length; ++i) { var propertyName = arr[i]; assert(tokenCodes.hasOwnProperty(propertyName), 'Property "' + propertyName + '" found'); assert.sameValue(tokenCodes[propertyName], propertyName, 'Property "' + propertyName + '" has correct value'); tokenCodes[propertyName] = 0; assert.sameValue(test, propertyName, 'Property "' + propertyName + '" sets correct value'); }