browser.js |
|
0 |
length.js |
---
esid: sec-object.getownpropertysymbols
description: >
Object.getOwnPropertySymbols.length is 1.
info: |
Object.getOwnPropertySymbols ( O )
17 ECMAScript Standard Built-in Objects:
Every built-in Function object, including constructors, has a length
property whose value is an integer. Unless otherwise specified, this
value is equal to the largest number of named arguments shown in the
subclause headings for the function description, including optional
parameters. However, rest parameters shown using the form “...name”
are not included in the default argument count.
Unless otherwise specified, the length property of a built-in Function
object has the attributes { [[Writable]]: false, [[Enumerable]]: false,
[[Configurable]]: true }.
includes: [propertyHelper.js]
--- |
1119 |
name.js |
---
esid: sec-object.getownpropertysymbols
description: >
Object.getOwnPropertySymbols.name is "getOwnPropertySymbols".
info: |
Object.getOwnPropertySymbols ( 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]
--- |
914 |
non-object-argument-invalid.js |
---
esid: sec-object.getownpropertysymbols
description: >
Object.getOwnPropertySymbols 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]
--- |
1065 |
non-object-argument-valid.js |
---
esid: sec-object.getownpropertysymbols
description: >
Object.getOwnPropertySymbols 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]
--- |
1433 |
not-a-constructor.js |
---
esid: sec-ecmascript-standard-built-in-objects
description: >
Object.getOwnPropertySymbols 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, Symbol, arrow-function]
--- |
952 |
object-contains-symbol-property-with-description.js |
---
esid: sec-object.getownpropertysymbols
description: >
Object.getOwnPropertySymbols returns all symbol properties that have descriptions
features: [Symbol]
--- |
628 |
object-contains-symbol-property-without-description.js |
---
esid: sec-object.getownpropertysymbols
description: >
Object.getOwnPropertySymbols returns all symbol properties that do not have descriptions
features: [Symbol]
--- |
622 |
order-after-define-property.js |
---
esid: sec-object.getownpropertysymbols
description: >
Property names are returned in ascending chronological order of creation
that is unaffected by [[DefineOwnProperty]].
info: |
Object.getOwnPropertySymbols ( O )
1. Return ? GetOwnPropertyKeys(O, Symbol).
GetOwnPropertyKeys ( O, type )
1. Let obj be ? ToObject(O).
2. Let keys be ? obj.[[OwnPropertyKeys]]().
[...]
OrdinaryOwnPropertyKeys ( O )
[...]
4. For each own property key P of O that is a Symbol, in ascending
chronological order of property creation, do
a. Add P as the last element of keys.
5. Return keys.
features: [Symbol]
includes: [compareArray.js]
--- |
1210 |
proxy-invariant-absent-not-configurable-string-key.js |
---
esid: sec-object.getownpropertysymbols
description: >
Proxy [[OwnPropertyKeys]] trap does not skip string keys when validating invariant:
The result List must contain the keys of all non-configurable own properties of
the target object.
info: |
Object.getOwnPropertySymbols ( O )
1. Return ? GetOwnPropertyKeys(O, Symbol).
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]
--- |
1531 |
proxy-invariant-duplicate-string-entry.js |
---
esid: sec-object.getownpropertysymbols
description: >
Proxy [[OwnPropertyKeys]] trap does not skip string keys when validating invariant:
The returned List contains no duplicate entries.
info: |
Object.getOwnPropertySymbols ( O )
1. Return ? GetOwnPropertyKeys(O, Symbol).
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]
--- |
924 |
proxy-invariant-not-extensible-absent-string-key.js |
---
esid: sec-object.getownpropertysymbols
description: >
Proxy [[OwnPropertyKeys]] trap does not skip string 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.getOwnPropertySymbols ( O )
1. Return ? GetOwnPropertyKeys(O, Symbol).
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]
--- |
1467 |
proxy-invariant-not-extensible-extra-string-key.js |
---
esid: sec-object.getownpropertysymbols
description: >
Proxy [[OwnPropertyKeys]] trap does not skip string 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.getOwnPropertySymbols ( O )
1. Return ? GetOwnPropertyKeys(O, Symbol).
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]
--- |
1385 |
shell.js |
|
0 |