15.2.3.3-2-44.js (852B)
1 // Copyright (c) 2012 Ecma International. All rights reserved. 2 // This code is governed by the BSD license found in the LICENSE file. 3 4 /*--- 5 es5id: 15.2.3.3-2-44 6 description: > 7 Object.getOwnPropertyDescriptor - argument 'P' is an object that 8 has an own toString method that returns an object and toValue 9 method that returns a primitive value 10 ---*/ 11 12 var obj = { 13 "abc": 1 14 }; 15 var valueOfAccessed = false; 16 var toStringAccessed = false; 17 18 var ownProp = { 19 toString: function() { 20 toStringAccessed = true; 21 return {}; 22 }, 23 valueOf: function() { 24 valueOfAccessed = true; 25 return "abc"; 26 } 27 }; 28 29 var desc = Object.getOwnPropertyDescriptor(obj, ownProp); 30 31 assert.sameValue(desc.value, 1, 'desc.value'); 32 assert(valueOfAccessed, 'valueOfAccessed !== true'); 33 assert(toStringAccessed, 'toStringAccessed !== true'); 34 35 reportCompare(0, 0);