Name Description Size
15.2.3.4-0-1.js --- es5id: 15.2.3.4-0-1 description: Object.getOwnPropertyNames must exist as a function --- 360
15.2.3.4-0-2.js --- es5id: 15.2.3.4-0-2 description: > Object.getOwnPropertyNames must exist as a function taking 1 parameter --- 378
15.2.3.4-1-2.js --- es5id: 15.2.3.4-1-2 description: Object.getOwnPropertyNames throws TypeError if 'O' is undefined --- 352
15.2.3.4-1-3.js --- es5id: 15.2.3.4-1-3 description: Object.getOwnPropertyNames throws TypeError if 'O' is null --- 342
15.2.3.4-1-4.js --- es5id: 15.2.3.4-1-4 description: > Object.getOwnPropertyNames does not throw TypeError if 'O' is a boolean --- 320
15.2.3.4-1-5.js --- es5id: 15.2.3.4-1-5 description: > Object.getOwnPropertyNames does not throw TypeError if 'O' is a string --- 320
15.2.3.4-1.js --- es5id: 15.2.3.4-1 description: > Object.getOwnPropertyNames does not throw TypeError if type of first param is not Object --- 332
15.2.3.4-2-1.js --- es5id: 15.2.3.4-2-1 description: > Object.getOwnPropertyNames - returned array is an array according to Array.isArray --- 423
15.2.3.4-2-2.js --- es5id: 15.2.3.4-2-2 description: Object.getOwnPropertyNames - returned array is an instance of Array --- 402
15.2.3.4-2-3.js --- es5id: 15.2.3.4-2-3 description: > Object.getOwnPropertyNames - length of returned array is initialized to 0 --- 402
15.2.3.4-2-4.js --- es5id: 15.2.3.4-2-4 description: > Object.getOwnPropertyNames - returned array is the standard built-in constructor --- 575
15.2.3.4-3-1.js --- es5id: 15.2.3.4-3-1 description: > Object.getOwnPropertyNames - elements of the returned array start from index 0 --- 477
15.2.3.4-4-1.js --- es5id: 15.2.3.4-4-1 description: Object.getOwnPropertyNames returns array of property names (Global) --- 866
15.2.3.4-4-2.js --- es5id: 15.2.3.4-4-2 description: Object.getOwnPropertyNames returns array of property names (Object) --- 1211
15.2.3.4-4-36.js --- es5id: 15.2.3.4-4-36 description: > Object.getOwnPropertyNames - inherited data properties are not pushed into the returned array --- 553
15.2.3.4-4-37.js --- es5id: 15.2.3.4-4-37 description: > Object.getOwnPropertyNames - inherited accessor properties are not pushed into the returned array --- 647
15.2.3.4-4-38.js --- es5id: 15.2.3.4-4-38 description: > Object.getOwnPropertyNames - own data properties are pushed into the returned array --- 420
15.2.3.4-4-39.js --- es5id: 15.2.3.4-4-39 description: > Object.getOwnPropertyNames - own accessor properties are pushed into the returned array --- 512
15.2.3.4-4-40.js --- es5id: 15.2.3.4-4-40 description: > Object.getOwnPropertyNames - inherited data property of String object 'O' is not pushed into the returned array --- 543
15.2.3.4-4-41.js --- es5id: 15.2.3.4-4-41 description: > Object.getOwnPropertyNames - inherited accessor property of String object 'O' is not pushed into the returned array --- 634
15.2.3.4-4-42.js --- es5id: 15.2.3.4-4-42 description: > Object.getOwnPropertyNames - own data property of String object 'O' is pushed into the returned array --- 664
15.2.3.4-4-43.js --- es5id: 15.2.3.4-4-43 description: > Object.getOwnPropertyNames - own accessor property of String object 'O' is pushed into the returned array --- 695
15.2.3.4-4-44.js --- es5id: 15.2.3.4-4-44 description: > Object.getOwnPropertyNames - own index properties of String object are pushed into the returned Array includes: [compareArray.js] --- 476
15.2.3.4-4-45.js --- es5id: 15.2.3.4-4-45 description: > Object.getOwnPropertyNames - inherited data property of Array object 'O' is not pushed into the returned array. --- 533
15.2.3.4-4-46.js --- es5id: 15.2.3.4-4-46 description: > Object.getOwnPropertyNames - inherited accessor property of Array object 'O' is not pushed into the returned array. --- 624
15.2.3.4-4-47.js --- es5id: 15.2.3.4-4-47 description: > Object.getOwnPropertyNames - own data property of Array object 'O' is pushed into the returned array --- 593
15.2.3.4-4-48.js --- es5id: 15.2.3.4-4-48 description: > Object.getOwnPropertyNames - own accessor property of Array object 'O' is pushed into the returned array. --- 686
15.2.3.4-4-49.js --- es5id: 15.2.3.4-4-49 description: > Object.getOwnPropertyNames - own index properties of Array objcect are pushed into the returned Array includes: [compareArray.js] --- 447
15.2.3.4-4-50.js --- es5id: 15.2.3.4-4-50 description: > Object.getOwnPropertyNames - non-enumerable own property of 'O' is pushed into the returned Array --- 548
15.2.3.4-4-b-1.js --- es5id: 15.2.3.4-4-b-1 description: > Object.getOwnPropertyNames - descriptor of resultant array is all true --- 617
15.2.3.4-4-b-2.js --- es5id: 15.2.3.4-4-b-2 description: > Object.getOwnPropertyNames - all own properties are pushed into the returned array includes: [compareArray.js] --- 764
15.2.3.4-4-b-3.js --- es5id: 15.2.3.4-4-b-3 description: > Object.getOwnPropertyNames - own property named empty('') is pushed into the returned array --- 552
15.2.3.4-4-b-4.js --- es5id: 15.2.3.4-4-b-4 description: > Object.getOwnPropertyNames - elements of the returned array are writable --- 564
15.2.3.4-4-b-5.js --- es5id: 15.2.3.4-4-b-5 description: > Object.getOwnPropertyNames - elements of the returned array are enumerable --- 533
15.2.3.4-4-b-6.js --- es5id: 15.2.3.4-4-b-6 description: > Object.getOwnPropertyNames - elements of the returned array are configurable --- 589
browser.js 0
name.js --- es6id: 19.1.2.7 description: > Object.getOwnPropertyNames.name is "getOwnPropertyNames". info: | Object.getOwnPropertyNames ( O ) 17 ECMAScript Standard Built-in Objects: Every built-in Function object, including constructors, that is not identified as an anonymous function has a name property whose value is a String. Unless otherwise specified, the name property of a built-in Function object, if it exists, has the attributes { [[Writable]]: false, [[Enumerable]]: false, [[Configurable]]: true }. includes: [propertyHelper.js] --- 881
non-object-argument-invalid.js --- esid: sec-object.getownpropertynames description: > Object.getOwnPropertyNames called with an invalid non-object value info: | GetOwnPropertyKeys ( O, type ) Let obj be ? ToObject(O). Let keys be ? obj.[[OwnPropertyKeys]](). Let nameList be a new empty List. For each element nextKey of keys, do If Type(nextKey) is Symbol and type is symbol or Type(nextKey) is String and type is string, then Append nextKey as the last element of nameList. Return CreateArrayFromList(nameList). features: [Symbol] --- 1053
non-object-argument-valid.js --- esid: sec-object.getownpropertynames description: > Object.getOwnPropertyNames called with a valid non-object value info: | GetOwnPropertyKeys ( O, type ) Let obj be ? ToObject(O). Let keys be ? obj.[[OwnPropertyKeys]](). Let nameList be a new empty List. For each element nextKey of keys, do If Type(nextKey) is Symbol and type is symbol or Type(nextKey) is String and type is string, then Append nextKey as the last element of nameList. Return CreateArrayFromList(nameList). features: [Symbol] includes: [compareArray.js] --- 1421
not-a-constructor.js --- esid: sec-ecmascript-standard-built-in-objects description: > Object.getOwnPropertyNames does not implement [[Construct]], is not new-able info: | ECMAScript Function Objects Built-in function objects that are not identified as constructors do not implement the [[Construct]] internal method unless otherwise specified in the description of a particular function. sec-evaluatenew ... 7. If IsConstructor(constructor) is false, throw a TypeError exception. ... includes: [isConstructor.js] features: [Reflect.construct, arrow-function] --- 936
order-after-define-property.js --- esid: sec-object.getownpropertynames description: > Property names are returned in ascending chronological order of creation that is unaffected by [[DefineOwnProperty]]. info: | Object.getOwnPropertyNames ( O ) 1. Return ? GetOwnPropertyKeys(O, String). GetOwnPropertyKeys ( O, type ) 1. Let obj be ? ToObject(O). 2. Let keys be ? obj.[[OwnPropertyKeys]](). [...] OrdinaryOwnPropertyKeys ( O ) [...] 3. For each own property key P of O that is a String but is not an array index, in ascending chronological order of property creation, do a. Add P as the last element of keys. [...] 5. Return keys. features: [arrow-function] includes: [compareArray.js] --- 1289
proxy-invariant-absent-not-configurable-symbol-key.js --- esid: sec-object.getownpropertynames description: > Proxy [[OwnPropertyKeys]] trap does not skip symbol keys when validating invariant: The result List must contain the keys of all non-configurable own properties of the target object. info: | Object.getOwnPropertyNames ( O ) 1. Return ? GetOwnPropertyKeys(O, String). GetOwnPropertyKeys ( O, type ) ... 2. Let keys be ? obj.[[OwnPropertyKeys]](). [[OwnPropertyKeys]] ( ) ... 11. Let targetKeys be ? target.[[OwnPropertyKeys]](). ... 15. Let targetNonconfigurableKeys be a new empty List. 16. For each element key of targetKeys, do a. Let desc be ? target.[[GetOwnProperty]](key). b. If desc is not undefined and desc.[[Configurable]] is false, then i. Append key as an element of targetNonconfigurableKeys. ... 18. Let uncheckedResultKeys be a new List which is a copy of trapResult. 19. For each key that is an element of targetNonconfigurableKeys, do a. If key is not an element of uncheckedResultKeys, throw a TypeError exception. features: [Proxy, Symbol] --- 1556
proxy-invariant-duplicate-symbol-entry.js --- esid: sec-object.getownpropertynames description: > Proxy [[OwnPropertyKeys]] trap does not skip symbol keys when validating invariant: The returned List contains no duplicate entries. info: | Object.getOwnPropertyNames ( O ) 1. Return ? GetOwnPropertyKeys(O, String). GetOwnPropertyKeys ( O, type ) ... 2. Let keys be ? obj.[[OwnPropertyKeys]](). [[OwnPropertyKeys]] ( ) ... 8. Let trapResult be ? CreateListFromArrayLike(trapResultArray, « String, Symbol »). 9. If trapResult contains any duplicate entries, throw a TypeError exception. features: [Proxy, Symbol] --- 955
proxy-invariant-not-extensible-absent-symbol-key.js --- esid: sec-object.getownpropertynames description: > Proxy [[OwnPropertyKeys]] trap does not skip symbol keys when validating invariant: If the target object is not extensible, then the result List must contain all the keys of the own properties of the target object and no other values. info: | Object.getOwnPropertyNames ( O ) 1. Return ? GetOwnPropertyKeys(O, String). GetOwnPropertyKeys ( O, type ) ... 2. Let keys be ? obj.[[OwnPropertyKeys]](). [[OwnPropertyKeys]] ( ) ... 11. Let targetKeys be ? target.[[OwnPropertyKeys]](). 16. For each element key of targetKeys, do a. Let desc be ? target.[[GetOwnProperty]](key). b. If desc is not undefined and desc.[[Configurable]] is false, then ... c. Else, i. Append key as an element of targetConfigurableKeys. ... 18. Let uncheckedResultKeys be a new List which is a copy of trapResult. ... 21. For each key that is an element of targetConfigurableKeys, do a. If key is not an element of uncheckedResultKeys, throw a TypeError exception. features: [Proxy, Symbol] --- 1506
proxy-invariant-not-extensible-extra-symbol-key.js --- esid: sec-object.getownpropertynames description: > Proxy [[OwnPropertyKeys]] trap does not skip symbol keys when validating invariant: If the target object is not extensible, then the result List must contain all the keys of the own properties of the target object and no other values. info: | Object.getOwnPropertyNames ( O ) 1. Return ? GetOwnPropertyKeys(O, String). GetOwnPropertyKeys ( O, type ) ... 2. Let keys be ? obj.[[OwnPropertyKeys]](). [[OwnPropertyKeys]] ( ) ... 11. Let targetKeys be ? target.[[OwnPropertyKeys]](). 16. For each element key of targetKeys, do a. Let desc be ? target.[[GetOwnProperty]](key). b. If desc is not undefined and desc.[[Configurable]] is false, then ... c. Else, i. Append key as an element of targetConfigurableKeys. ... 18. Let uncheckedResultKeys be a new List which is a copy of trapResult. ... 22. If uncheckedResultKeys is not empty, throw a TypeError exception. features: [Proxy, Symbol] --- 1410
S15.2.3.4_A1_T1.js --- info: | Object.getOwnProperties and Object.prototype.hasOwnProperty should agree on what the own properties are. es5id: 15.2.3.4_A1_T1 description: > Check that all the own property names reported by Object.getOwnPropertyNames on a strict function are names that hasOwnProperty agrees are own properties. --- 715
shell.js 0