__proto__-duplicate-computed.js |
---
esid: sec-__proto__-property-names-in-object-initializers
es6id: B.3.1
description: >
The syntax error for duplicate `__proto__` property is not valid if the duplicate is a
ComputedPropertyName
info: |
B.3.1__proto__ Property Names in Object Initializers
It is a Syntax Error if PropertyNameList of PropertyDefinitionList contains any duplicate
entries for "__proto__" and at least two of those entries were obtained from productions of
the form
PropertyDefinition : PropertyName : AssignmentExpression .
12.2.6.6 Static Semantics: PropertyNameList
...
3. Append PropName of PropertyDefinition to the end of list.
...
12.2.6.5 Static Semantics: PropName
ComputedPropertyName : [ AssignmentExpression ]
1. Return empty.
--- |
1361 |
__proto__-duplicate.js |
---
esid: sec-__proto__-property-names-in-object-initializers
es6id: B.3.1
description: Duplicate `__proto__` property
info: |
It is a Syntax Error if PropertyNameList of PropertyDefinitionList contains
any duplicate entries for "__proto__" and at least two of those entries
were obtained from productions of the form
PropertyDefinition : PropertyName : AssignmentExpression .
negative:
phase: parse
type: SyntaxError
--- |
696 |
__proto__-fn-name.js |
---
esid: sec-runtime-semantics-propertydefinitionevaluation
description: Function name is not assigned based on the __proto__ property name
info: |
[...]
3. Else if propKey is "__proto__" and IsComputedPropertyKey of PropertyName is false, then
a. Let isProtoSetter be true.
[...]
5. If IsAnonymousFunctionDefinition(AssignmentExpression) is true and isProtoSetter is false, then
a. Let propValue be ? NamedEvaluation of AssignmentExpression with argument propKey.
6. Else,
a. Let exprValueRef be ? Evaluation of AssignmentExpression.
--- |
852 |
__proto__-permitted-dup-shorthand.js |
---
esid: sec-object-initializer
description: Permitted duplicate `__proto__` property (shorthand)
info: |
Annex B defines an early error for duplicate PropertyName of `__proto__`,
but this does not apply to properties created from other productions.
B.3.1 __proto__ Property Names in Object Initializers
It is a Syntax Error if PropertyNameList of PropertyDefinitionList contains
any duplicate entries for "__proto__" and at least two of those entries
were obtained from productions of the form
PropertyDefinition : PropertyName : AssignmentExpression .
--- |
884 |
__proto__-permitted-dup.js |
---
esid: sec-object-initializer
description: Permitted duplicate `__proto__` property
info: |
Annex B defines an early error for duplicate PropertyName of `__proto__`,
but this does not apply to properties created from other productions.
B.3.1 __proto__ Property Names in Object Initializers
It is a Syntax Error if PropertyNameList of PropertyDefinitionList contains
any duplicate entries for "__proto__" and at least two of those entries
were obtained from productions of the form
PropertyDefinition : PropertyName : AssignmentExpression .
features: [generators, async-functions, async-iteration, __proto__]
--- |
1225 |
__proto__-poisoned-object-prototype.js |
---
esid: sec-__proto__-property-names-in-object-initializers
description: >
The value of the `__proto__` property key is assigned to the [[Prototype]].
Object.prototype.__proto__ setter should not be called.
info: |
__proto__ Property Names in Object Initializers
PropertyDefinition : PropertyName : AssignmentExpression
[...]
7. If isProtoSetter is true, then
a. If Type(propValue) is either Object or Null, then
i. Return object.[[SetPrototypeOf]](propValue).
--- |
941 |
__proto__-value-non-object.js |
---
esid: sec-__proto__-property-names-in-object-initializers
es6id: B.3.1
description: >
The value of the `__proto__` property key is not assigned to the
[[Prototype]] internal slot, nor to a property named "__proto__" (non-Object,
non-null value)
info: |
...
6. If propKey is the String value "__proto__" and if
IsComputedPropertyKey(propKey) is false, then
a. If Type(propValue) is either Object or Null, then
[...]
b. Return NormalCompletion(empty).
features: [Symbol]
--- |
1988 |
__proto__-value-null.js |
---
esid: sec-__proto__-property-names-in-object-initializers
es6id: B.3.1
description: >
The value of the `__proto__` property key is assigned to the [[Prototype]]
internal slot (null value)
info: |
...
6. If propKey is the String value "__proto__" and if
IsComputedPropertyKey(propKey) is false, then
a. If Type(propValue) is either Object or Null, then
i. Return object.[[SetPrototypeOf]](propValue).
--- |
778 |
__proto__-value-obj.js |
---
esid: sec-__proto__-property-names-in-object-initializers
es6id: B.3.1
description: >
The value of the `__proto__` property key is assigned to the [[Prototype]]
internal slot (Object value)
info: |
__proto__ Property Names in Object Initializers
...
6. If propKey is the String value "__proto__" and if IsComputedPropertyKey(propKey) is false, then
a. If Type(propValue) is either Object or Null, then
i. Return object.[[SetPrototypeOf]](propValue).
b. Return NormalCompletion(empty).
...
--- |
879 |
11.1.5-0-1.js |
---
info: |
it isn't clear what specific requirements of the specificaiton are being tested here. This test should
probably be replaced by some more targeted tests. AllenWB
es5id: 11.1.5-0-1
description: Object literal - get set property
--- |
660 |
11.1.5-0-2.js |
---
info: |
it isn't clear what specific requirements of the specificaiton are being tested here. This test should
probably be replaced by some more targeted tests. AllenWB
es5id: 11.1.5-0-2
description: Object literal - multiple get set properties
--- |
841 |
11.1.5-1gs-strict.js |
---
es5id: 11.1.5-1gs
description: >
Strict Mode - SyntaxError is thrown when 'eval' occurs as the
Identifier in a PropertySetParameterList of a PropertyAssignment
that is contained in strict code
negative:
phase: parse
type: SyntaxError
flags: [onlyStrict]
--- |
524 |
11.1.5-2gs.js |
---
es5id: 11.1.5-2gs
description: >
Duplicate definitions of data properties are allowed in ObjectLiterals.
--- |
370 |
11.1.5_3-3-1.js |
---
info: |
Refer 11.1.5;
The production
PropertyNameAndValueList : PropertyAssignment
3.Call the [[DefineOwnProperty]] internal method of obj with arguments propId.name, propId.descriptor, and false.
es5id: 11.1.5_3-3-1
description: >
Object initialization using PropertyNameAndValueList
(PropertyAssignment) when property (read-only) exists in
Object.prototype (step 3)
--- |
899 |
11.1.5_4-4-a-3.js |
---
info: |
Refer 11.1.5;
The production
PropertyNameAndValueList : PropertyNameAndValueList , PropertyAssignment
4. If previous is not undefined then throw a SyntaxError exception if any of the following conditions are true
a. This production is contained in strict code and IsDataDescriptor(previous) is true and IsDataDescriptor(propId.descriptor) is true
es5id: 11.1.5_4-4-a-3
description: >
Object literal - Duplicate data property name allowed gets last
defined value
--- |
745 |
11.1.5_4-4-b-1.js |
---
es5id: 11.1.5_4-4-b-1
description: >
Object literal - No SyntaxError if a data property definition is
followed by get accessor definition with the same name
--- |
373 |
11.1.5_4-5-1.js |
---
info: |
Refer 11.1.5;
The production
PropertyNameAndValueList : PropertyNameAndValueList , PropertyAssignment
5.Call the [[DefineOwnProperty]] internal method of obj with arguments propId.name, propId.descriptor, and false.
es5id: 11.1.5_4-5-1
description: >
Object initialization using PropertyNameAndValueList
(PropertyNameAndValueList , PropertyAssignment) when property
(read-only) exists in Object.prototype (Step 5)
--- |
926 |
11.1.5_5-4-1.js |
---
info: |
Refer 11.1.5;
The production
PropertyAssignment : PropertyName : AssignmentExpression
4.Let desc be the Property Descriptor{[[Value]]: propValue, [[Writable]]: true, [[Enumerable]]: true, [[Configurable]]: true}
es5id: 11.1.5_5-4-1
description: Object literal - property descriptor for assignment expression
--- |
809 |
11.1.5_6-3-1.js |
---
info: |
Refer 11.1.5;
The production
PropertyAssignment : get PropertyName ( ) { FunctionBody }
3.Let desc be the Property Descriptor{[[Get]]: closure, [[Enumerable]]: true, [[Configurable]]: true}
es5id: 11.1.5_6-3-1
description: Object literal - property descriptor for get property assignment
--- |
713 |
11.1.5_6-3-2.js |
---
info: |
Refer 11.1.5;
The production
PropertyAssignment : get PropertyName ( ) { FunctionBody }
3.Let desc be the Property Descriptor{[[Get]]: closure, [[Enumerable]]: true, [[Configurable]]: true}
es5id: 11.1.5_6-3-2
description: >
Object literal - property descriptor for get property assignment
should not create a set function
--- |
683 |
11.1.5_7-3-1.js |
---
info: |
Refer 11.1.5;
The production
PropertyAssignment : set PropertyName( PropertySetParameterList ) { FunctionBody }
3.Let desc be the Property Descriptor{[[Set]]: closure, [[Enumerable]]: true, [[Configurable]]: true}
es5id: 11.1.5_7-3-1
description: Object literal - property descriptor for set property assignment
--- |
740 |
11.1.5_7-3-2.js |
---
info: |
Refer 11.1.5;
The production
PropertyAssignment : get PropertyName ( ) { FunctionBody }
3.Let desc be the Property Descriptor{[[Get]]: closure, [[Enumerable]]: true, [[Configurable]]: true}
es5id: 11.1.5_7-3-2
description: >
Object literal - property descriptor for set property assignment
should not create a get function
--- |
677 |
accessor-name-computed-err-evaluation.js |
---
description: Abrupt completion when evaluating expression (Object initializer)
esid: sec-object-initializer-runtime-semantics-evaluation
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
1. Let obj be ObjectCreate(%ObjectPrototype%).
2. Let status be the result of performing PropertyDefinitionEvaluation of
PropertyDefinitionList with arguments obj and true.
12.2.6.7 Runtime Semantics: Evaluation
ComputedPropertyName : [ AssignmentExpression ]
1. Let exprValue be the result of evaluating AssignmentExpression.
2. Let propName be ? GetValue(exprValue).
--- |
1114 |
accessor-name-computed-err-to-prop-key.js |
---
description: Abrupt completion when coercing to property key value (Object initializer)
esid: sec-object-initializer-runtime-semantics-evaluation
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
1. Let obj be ObjectCreate(%ObjectPrototype%).
2. Let status be the result of performing PropertyDefinitionEvaluation of
PropertyDefinitionList with arguments obj and true.
12.2.6.7 Runtime Semantics: Evaluation
[...]
ComputedPropertyName : [ AssignmentExpression ]
1. Let exprValue be the result of evaluating AssignmentExpression.
2. Let propName be ? GetValue(exprValue).
3. Return ? ToPropertyKey(propName).
7.1.14 ToPropertyKey
1. Let key be ? ToPrimitive(argument, hint String).
7.1.1 ToPrimitive
[...]
7. Return ? OrdinaryToPrimitive(input, hint).
7.1.1.1 OrdinaryToPrimitive
5. For each name in methodNames in List order, do
[...]
6. Throw a TypeError exception.
--- |
1444 |
accessor-name-computed-err-unresolvable.js |
---
description: Abrupt completion when resolving reference value (Object initializer)
esid: sec-object-initializer-runtime-semantics-evaluation
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
1. Let obj be ObjectCreate(%ObjectPrototype%).
2. Let status be the result of performing PropertyDefinitionEvaluation of
PropertyDefinitionList with arguments obj and true.
12.2.6.7 Runtime Semantics: Evaluation
[...]
ComputedPropertyName : [ AssignmentExpression ]
1. Let exprValue be the result of evaluating AssignmentExpression.
2. Let propName be ? GetValue(exprValue).
--- |
1096 |
accessor-name-computed-in.js |
---
esid: sec-object-initializer-runtime-semantics-evaluation
es6id: 12.2.6.8
description: >
AssignmentExpression may contain `in` keyword regardless of outer context
info: |
12.2.6.7 Runtime Semantics: Evaluation
[...]
ComputedPropertyName : [ AssignmentExpression ]
1. Let exprValue be the result of evaluating AssignmentExpression.
2. Let propName be ? GetValue(exprValue).
3. Return ? ToPropertyKey(propName).
--- |
925 |
accessor-name-computed-yield-expr.js |
---
esid: sec-object-initializer-runtime-semantics-evaluation
es6id: 12.2.6.8
description: >
The `yield` keyword behaves as a YieldExpression within a generator function
info: |
12.2.6.7 Runtime Semantics: Evaluation
[...]
ComputedPropertyName : [ AssignmentExpression ]
1. Let exprValue be the result of evaluating AssignmentExpression.
2. Let propName be ? GetValue(exprValue).
3. Return ? ToPropertyKey(propName).
features: [generators]
--- |
952 |
accessor-name-computed-yield-id.js |
---
esid: sec-object-initializer-runtime-semantics-evaluation
es6id: 12.2.6.8
description: >
The `yield` keyword behaves as an Identifier outside of a generator function
info: |
12.2.6.7 Runtime Semantics: Evaluation
[...]
ComputedPropertyName : [ AssignmentExpression ]
1. Let exprValue be the result of evaluating AssignmentExpression.
2. Let propName be ? GetValue(exprValue).
3. Return ? ToPropertyKey(propName).
flags: [noStrict]
--- |
854 |
accessor-name-computed.js |
---
description: Computed values as accessor property names (AssignmentExpression) (Object initializer)
esid: sec-object-initializer-runtime-semantics-evaluation
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
1. Let obj be ObjectCreate(%ObjectPrototype%).
2. Let status be the result of performing PropertyDefinitionEvaluation of
PropertyDefinitionList with arguments obj and true.
12.2.6.7 Runtime Semantics: Evaluation
[...]
ComputedPropertyName : [ AssignmentExpression ]
1. Let exprValue be the result of evaluating AssignmentExpression.
2. Let propName be ? GetValue(exprValue).
3. Return ? ToPropertyKey(propName).
--- |
1189 |
accessor-name-literal-numeric-binary.js |
---
description: Computed values as accessor property names (numeric literal in binary notation) (Object initializer)
esid: sec-object-initializer-runtime-semantics-evaluation
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
1. Let obj be ObjectCreate(%ObjectPrototype%).
2. Let status be the result of performing PropertyDefinitionEvaluation of
PropertyDefinitionList with arguments obj and true.
12.2.6.7 Runtime Semantics: Evaluation
[...]
ComputedPropertyName : [ AssignmentExpression ]
1. Let exprValue be the result of evaluating AssignmentExpression.
2. Let propName be ? GetValue(exprValue).
3. Return ? ToPropertyKey(propName).
--- |
1169 |
accessor-name-literal-numeric-exponent.js |
---
description: Computed values as accessor property names (numeric literal in exponent notation) (Object initializer)
esid: sec-object-initializer-runtime-semantics-evaluation
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
1. Let obj be ObjectCreate(%ObjectPrototype%).
2. Let status be the result of performing PropertyDefinitionEvaluation of
PropertyDefinitionList with arguments obj and true.
12.2.6.7 Runtime Semantics: Evaluation
[...]
ComputedPropertyName : [ AssignmentExpression ]
1. Let exprValue be the result of evaluating AssignmentExpression.
2. Let propName be ? GetValue(exprValue).
3. Return ? ToPropertyKey(propName).
--- |
1191 |
accessor-name-literal-numeric-hex.js |
---
description: Computed values as accessor property names (numeric literal in hexadecimal notation) (Object initializer)
esid: sec-object-initializer-runtime-semantics-evaluation
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
1. Let obj be ObjectCreate(%ObjectPrototype%).
2. Let status be the result of performing PropertyDefinitionEvaluation of
PropertyDefinitionList with arguments obj and true.
12.2.6.7 Runtime Semantics: Evaluation
[...]
ComputedPropertyName : [ AssignmentExpression ]
1. Let exprValue be the result of evaluating AssignmentExpression.
2. Let propName be ? GetValue(exprValue).
3. Return ? ToPropertyKey(propName).
--- |
1173 |
accessor-name-literal-numeric-leading-decimal.js |
---
description: Computed values as accessor property names (numeric literal with leading decimal point) (Object initializer)
esid: sec-object-initializer-runtime-semantics-evaluation
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
1. Let obj be ObjectCreate(%ObjectPrototype%).
2. Let status be the result of performing PropertyDefinitionEvaluation of
PropertyDefinitionList with arguments obj and true.
12.2.6.7 Runtime Semantics: Evaluation
[...]
ComputedPropertyName : [ AssignmentExpression ]
1. Let exprValue be the result of evaluating AssignmentExpression.
2. Let propName be ? GetValue(exprValue).
3. Return ? ToPropertyKey(propName).
--- |
1186 |
accessor-name-literal-numeric-non-canonical.js |
---
description: Computed values as accessor property names (numeric literal with non-canonical representation) (Object initializer)
esid: sec-object-initializer-runtime-semantics-evaluation
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
1. Let obj be ObjectCreate(%ObjectPrototype%).
2. Let status be the result of performing PropertyDefinitionEvaluation of
PropertyDefinitionList with arguments obj and true.
12.2.6.7 Runtime Semantics: Evaluation
[...]
ComputedPropertyName : [ AssignmentExpression ]
1. Let exprValue be the result of evaluating AssignmentExpression.
2. Let propName be ? GetValue(exprValue).
3. Return ? ToPropertyKey(propName).
--- |
1207 |
accessor-name-literal-numeric-octal.js |
---
description: Computed values as accessor property names (numeric literal in octal notation) (Object initializer)
esid: sec-object-initializer-runtime-semantics-evaluation
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
1. Let obj be ObjectCreate(%ObjectPrototype%).
2. Let status be the result of performing PropertyDefinitionEvaluation of
PropertyDefinitionList with arguments obj and true.
12.2.6.7 Runtime Semantics: Evaluation
[...]
ComputedPropertyName : [ AssignmentExpression ]
1. Let exprValue be the result of evaluating AssignmentExpression.
2. Let propName be ? GetValue(exprValue).
3. Return ? ToPropertyKey(propName).
--- |
1167 |
accessor-name-literal-numeric-zero.js |
---
description: Computed values as accessor property names (numeric literal zero) (Object initializer)
esid: sec-object-initializer-runtime-semantics-evaluation
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
1. Let obj be ObjectCreate(%ObjectPrototype%).
2. Let status be the result of performing PropertyDefinitionEvaluation of
PropertyDefinitionList with arguments obj and true.
12.2.6.7 Runtime Semantics: Evaluation
[...]
ComputedPropertyName : [ AssignmentExpression ]
1. Let exprValue be the result of evaluating AssignmentExpression.
2. Let propName be ? GetValue(exprValue).
3. Return ? ToPropertyKey(propName).
--- |
1147 |
accessor-name-literal-string-char-escape.js |
---
description: Computed values as accessor property names (string literal containing a character escape sequence) (Object initializer)
esid: sec-object-initializer-runtime-semantics-evaluation
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
1. Let obj be ObjectCreate(%ObjectPrototype%).
2. Let status be the result of performing PropertyDefinitionEvaluation of
PropertyDefinitionList with arguments obj and true.
12.2.6.7 Runtime Semantics: Evaluation
[...]
ComputedPropertyName : [ AssignmentExpression ]
1. Let exprValue be the result of evaluating AssignmentExpression.
2. Let propName be ? GetValue(exprValue).
3. Return ? ToPropertyKey(propName).
--- |
1252 |
accessor-name-literal-string-default-escaped-ext.js |
---
description: Computed values as accessor property names (string literal 'default' w/ extended escape) (Object initializer)
esid: sec-object-initializer-runtime-semantics-evaluation
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
1. Let obj be ObjectCreate(%ObjectPrototype%).
2. Let status be the result of performing PropertyDefinitionEvaluation of
PropertyDefinitionList with arguments obj and true.
12.2.6.7 Runtime Semantics: Evaluation
[...]
ComputedPropertyName : [ AssignmentExpression ]
1. Let exprValue be the result of evaluating AssignmentExpression.
2. Let propName be ? GetValue(exprValue).
3. Return ? ToPropertyKey(propName).
--- |
1222 |
accessor-name-literal-string-default-escaped.js |
---
description: Computed values as accessor property names (string literal 'default' escaped) (Object initializer)
esid: sec-object-initializer-runtime-semantics-evaluation
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
1. Let obj be ObjectCreate(%ObjectPrototype%).
2. Let status be the result of performing PropertyDefinitionEvaluation of
PropertyDefinitionList with arguments obj and true.
12.2.6.7 Runtime Semantics: Evaluation
[...]
ComputedPropertyName : [ AssignmentExpression ]
1. Let exprValue be the result of evaluating AssignmentExpression.
2. Let propName be ? GetValue(exprValue).
3. Return ? ToPropertyKey(propName).
--- |
1207 |
accessor-name-literal-string-default.js |
---
description: Computed values as accessor property names (string literal 'default') (Object initializer)
esid: sec-object-initializer-runtime-semantics-evaluation
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
1. Let obj be ObjectCreate(%ObjectPrototype%).
2. Let status be the result of performing PropertyDefinitionEvaluation of
PropertyDefinitionList with arguments obj and true.
12.2.6.7 Runtime Semantics: Evaluation
[...]
ComputedPropertyName : [ AssignmentExpression ]
1. Let exprValue be the result of evaluating AssignmentExpression.
2. Let propName be ? GetValue(exprValue).
3. Return ? ToPropertyKey(propName).
--- |
1181 |
accessor-name-literal-string-double-quote.js |
---
description: Computed values as accessor property names (string literal using double quotes) (Object initializer)
esid: sec-object-initializer-runtime-semantics-evaluation
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
1. Let obj be ObjectCreate(%ObjectPrototype%).
2. Let status be the result of performing PropertyDefinitionEvaluation of
PropertyDefinitionList with arguments obj and true.
12.2.6.7 Runtime Semantics: Evaluation
[...]
ComputedPropertyName : [ AssignmentExpression ]
1. Let exprValue be the result of evaluating AssignmentExpression.
2. Let propName be ? GetValue(exprValue).
3. Return ? ToPropertyKey(propName).
--- |
1212 |
accessor-name-literal-string-empty.js |
---
description: Computed values as accessor property names (string literal, the empty string) (Object initializer)
esid: sec-object-initializer-runtime-semantics-evaluation
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
1. Let obj be ObjectCreate(%ObjectPrototype%).
2. Let status be the result of performing PropertyDefinitionEvaluation of
PropertyDefinitionList with arguments obj and true.
12.2.6.7 Runtime Semantics: Evaluation
[...]
ComputedPropertyName : [ AssignmentExpression ]
1. Let exprValue be the result of evaluating AssignmentExpression.
2. Let propName be ? GetValue(exprValue).
3. Return ? ToPropertyKey(propName).
--- |
1159 |
accessor-name-literal-string-hex-escape.js |
---
description: Computed values as accessor property names (string literal containing a hexadecimal escape sequence) (Object initializer)
esid: sec-object-initializer-runtime-semantics-evaluation
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
1. Let obj be ObjectCreate(%ObjectPrototype%).
2. Let status be the result of performing PropertyDefinitionEvaluation of
PropertyDefinitionList with arguments obj and true.
12.2.6.7 Runtime Semantics: Evaluation
[...]
ComputedPropertyName : [ AssignmentExpression ]
1. Let exprValue be the result of evaluating AssignmentExpression.
2. Let propName be ? GetValue(exprValue).
3. Return ? ToPropertyKey(propName).
--- |
1229 |
accessor-name-literal-string-line-continuation.js |
---
description: Computed values as accessor property names (string literal containing LineContinuation) (Object initializer)
esid: sec-object-initializer-runtime-semantics-evaluation
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
1. Let obj be ObjectCreate(%ObjectPrototype%).
2. Let status be the result of performing PropertyDefinitionEvaluation of
PropertyDefinitionList with arguments obj and true.
12.2.6.7 Runtime Semantics: Evaluation
[...]
ComputedPropertyName : [ AssignmentExpression ]
1. Let exprValue be the result of evaluating AssignmentExpression.
2. Let propName be ? GetValue(exprValue).
3. Return ? ToPropertyKey(propName).
--- |
1249 |
accessor-name-literal-string-single-quote.js |
---
description: Computed values as accessor property names (string literal using single quotes) (Object initializer)
esid: sec-object-initializer-runtime-semantics-evaluation
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
1. Let obj be ObjectCreate(%ObjectPrototype%).
2. Let status be the result of performing PropertyDefinitionEvaluation of
PropertyDefinitionList with arguments obj and true.
12.2.6.7 Runtime Semantics: Evaluation
[...]
ComputedPropertyName : [ AssignmentExpression ]
1. Let exprValue be the result of evaluating AssignmentExpression.
2. Let propName be ? GetValue(exprValue).
3. Return ? ToPropertyKey(propName).
--- |
1212 |
accessor-name-literal-string-unicode-escape.js |
---
description: Computed values as accessor property names (string literal containing a Unicode escape sequence) (Object initializer)
esid: sec-object-initializer-runtime-semantics-evaluation
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
1. Let obj be ObjectCreate(%ObjectPrototype%).
2. Let status be the result of performing PropertyDefinitionEvaluation of
PropertyDefinitionList with arguments obj and true.
12.2.6.7 Runtime Semantics: Evaluation
[...]
ComputedPropertyName : [ AssignmentExpression ]
1. Let exprValue be the result of evaluating AssignmentExpression.
2. Let propName be ? GetValue(exprValue).
3. Return ? ToPropertyKey(propName).
--- |
1257 |
browser.js |
|
0 |
computed-__proto__.js |
---
esid: prod-PropertyDefinition
description: >
computed __proto__ property key is assigned to an own property
info: |
12.2.6 Object Initializer
PropertyDefinition[Yield, Await] :
PropertyName[?Yield, ?Await] : AssignmentExpression[+In, ?Yield, ?Await]
PropertyName[Yield, Await] :
LiteralPropertyName
ComputedPropertyName[?Yield, ?Await]
ComputedPropertyName[Yield, Await] :
[ AssignmentExpression[+In, ?Yield, ?Await] ]
B.3.1__proto__ Property Names in Object Initializers
...
5. If propKey is the String value "__proto__" and if IsComputedPropertyKey(propKey)
is false, then
a. If Type(propValue) is either Object or Null, then
i. Return object.[[SetPrototypeOf]](propValue).
b. Return NormalCompletion(empty).
features: [Symbol]
--- |
3903 |
computed-property-evaluation-order.js |
---
esid: sec-object-initializer-runtime-semantics-propertydefinitionevaluation
description: >
Evaluation of PropertyDefinitionList occurs in order, and each
PropertyDefinition's PropertyName is evaluated before its
AssignmentExpression.
--- |
847 |
computed-property-name-topropertykey-before-value-evaluation.js |
---
esid: sec-runtime-semantics-propertydefinitionevaluation
description: >
ToPropertyKey is performed before evaluating the value expression.
info: |
13.2.5.5 Runtime Semantics: PropertyDefinitionEvaluation
PropertyDefinition : PropertyName : AssignmentExpression
1. Let propKey be ? Evaluation of PropertyName.
...
6. Else,
a. Let exprValueRef be ? Evaluation of AssignmentExpression.
b. Let propValue be ? GetValue(exprValueRef).
...
9. Perform ! CreateDataPropertyOrThrow(object, propKey, propValue).
...
13.2.5.4 Runtime Semantics: Evaluation
ComputedPropertyName : [ AssignmentExpression ]
1. Let exprValue be ? Evaluation of AssignmentExpression.
2. Let propName be ? GetValue(exprValue).
3. Return ? ToPropertyKey(propName).
--- |
1113 |
concise-generator.js |
---
es6id: 12.2.5
description: >
super method calls in object literal concise generator
features: [generators]
--- |
631 |
cover-initialized-name.js |
---
esid: sec-object-initializer-static-semantics-early-errors
es6id: 12.2.6.1
description: Initialized name is explicitly barred from object initializers
info: |
PropertyDefinition : CoverInitializedName
- Always throw a Syntax Error if code matches this production.
NOTE This production exists so that ObjectLiteral can serve as a cover
grammar for ObjectAssignmentPattern. It cannot occur in an actual object
initializer.
12.2.6 Object Initializer
Syntax
[...]
CoverInitializedName[Yield]:
IdentifierReference[?Yield] Initializer[+In, ?Yield]
negative:
phase: parse
type: SyntaxError
--- |
840 |
covered-ident-name-prop-name-literal-break-escaped.js |
---
description: break is a valid identifier name, using escape (PropertyName in a CoverParenthesizedExpressionAndArrowParameterList)
esid: prod-PropertyDefinition
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinitionList , PropertyDefinition
PropertyDefinition:
IdentifierReference
PropertyName : AssignmentExpression
MethodDefinition
... AssignmentExpression
...
PropertyName:
LiteralPropertyName
...
LiteralPropertyName:
IdentifierName
...
Reserved Words
A reserved word is an IdentifierName that cannot be used as an Identifier.
--- |
1049 |
covered-ident-name-prop-name-literal-case-escaped.js |
---
description: case is a valid identifier name, using escape (PropertyName in a CoverParenthesizedExpressionAndArrowParameterList)
esid: prod-PropertyDefinition
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinitionList , PropertyDefinition
PropertyDefinition:
IdentifierReference
PropertyName : AssignmentExpression
MethodDefinition
... AssignmentExpression
...
PropertyName:
LiteralPropertyName
...
LiteralPropertyName:
IdentifierName
...
Reserved Words
A reserved word is an IdentifierName that cannot be used as an Identifier.
--- |
1045 |
covered-ident-name-prop-name-literal-catch-escaped.js |
---
description: catch is a valid identifier name, using escape (PropertyName in a CoverParenthesizedExpressionAndArrowParameterList)
esid: prod-PropertyDefinition
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinitionList , PropertyDefinition
PropertyDefinition:
IdentifierReference
PropertyName : AssignmentExpression
MethodDefinition
... AssignmentExpression
...
PropertyName:
LiteralPropertyName
...
LiteralPropertyName:
IdentifierName
...
Reserved Words
A reserved word is an IdentifierName that cannot be used as an Identifier.
--- |
1049 |
covered-ident-name-prop-name-literal-class-escaped.js |
---
description: class is a valid identifier name, using escape (PropertyName in a CoverParenthesizedExpressionAndArrowParameterList)
esid: prod-PropertyDefinition
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinitionList , PropertyDefinition
PropertyDefinition:
IdentifierReference
PropertyName : AssignmentExpression
MethodDefinition
... AssignmentExpression
...
PropertyName:
LiteralPropertyName
...
LiteralPropertyName:
IdentifierName
...
Reserved Words
A reserved word is an IdentifierName that cannot be used as an Identifier.
--- |
1049 |
covered-ident-name-prop-name-literal-const-escaped.js |
---
description: const is a valid identifier name, using escape (PropertyName in a CoverParenthesizedExpressionAndArrowParameterList)
esid: prod-PropertyDefinition
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinitionList , PropertyDefinition
PropertyDefinition:
IdentifierReference
PropertyName : AssignmentExpression
MethodDefinition
... AssignmentExpression
...
PropertyName:
LiteralPropertyName
...
LiteralPropertyName:
IdentifierName
...
Reserved Words
A reserved word is an IdentifierName that cannot be used as an Identifier.
--- |
1049 |
covered-ident-name-prop-name-literal-continue-escaped.js |
---
description: continue is a valid identifier name, using escape (PropertyName in a CoverParenthesizedExpressionAndArrowParameterList)
esid: prod-PropertyDefinition
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinitionList , PropertyDefinition
PropertyDefinition:
IdentifierReference
PropertyName : AssignmentExpression
MethodDefinition
... AssignmentExpression
...
PropertyName:
LiteralPropertyName
...
LiteralPropertyName:
IdentifierName
...
Reserved Words
A reserved word is an IdentifierName that cannot be used as an Identifier.
--- |
1061 |
covered-ident-name-prop-name-literal-debugger-escaped.js |
---
description: debugger is a valid identifier name, using escape (PropertyName in a CoverParenthesizedExpressionAndArrowParameterList)
esid: prod-PropertyDefinition
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinitionList , PropertyDefinition
PropertyDefinition:
IdentifierReference
PropertyName : AssignmentExpression
MethodDefinition
... AssignmentExpression
...
PropertyName:
LiteralPropertyName
...
LiteralPropertyName:
IdentifierName
...
Reserved Words
A reserved word is an IdentifierName that cannot be used as an Identifier.
--- |
1061 |
covered-ident-name-prop-name-literal-default-escaped-ext.js |
---
description: default is a valid identifier name, using extended escape (PropertyName in a CoverParenthesizedExpressionAndArrowParameterList)
esid: prod-PropertyDefinition
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinitionList , PropertyDefinition
PropertyDefinition:
IdentifierReference
PropertyName : AssignmentExpression
MethodDefinition
... AssignmentExpression
...
PropertyName:
LiteralPropertyName
...
LiteralPropertyName:
IdentifierName
...
Reserved Words
A reserved word is an IdentifierName that cannot be used as an Identifier.
--- |
1070 |
covered-ident-name-prop-name-literal-default-escaped.js |
---
description: default is a valid identifier name, using escape (PropertyName in a CoverParenthesizedExpressionAndArrowParameterList)
esid: prod-PropertyDefinition
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinitionList , PropertyDefinition
PropertyDefinition:
IdentifierReference
PropertyName : AssignmentExpression
MethodDefinition
... AssignmentExpression
...
PropertyName:
LiteralPropertyName
...
LiteralPropertyName:
IdentifierName
...
Reserved Words
A reserved word is an IdentifierName that cannot be used as an Identifier.
--- |
1057 |
covered-ident-name-prop-name-literal-default.js |
---
description: default is a valid identifier name (PropertyName in a CoverParenthesizedExpressionAndArrowParameterList)
esid: prod-PropertyDefinition
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinitionList , PropertyDefinition
PropertyDefinition:
IdentifierReference
PropertyName : AssignmentExpression
MethodDefinition
... AssignmentExpression
...
PropertyName:
LiteralPropertyName
...
LiteralPropertyName:
IdentifierName
...
Reserved Words
A reserved word is an IdentifierName that cannot be used as an Identifier.
--- |
1030 |
covered-ident-name-prop-name-literal-delete-escaped.js |
---
description: delete is a valid identifier name, using escape (PropertyName in a CoverParenthesizedExpressionAndArrowParameterList)
esid: prod-PropertyDefinition
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinitionList , PropertyDefinition
PropertyDefinition:
IdentifierReference
PropertyName : AssignmentExpression
MethodDefinition
... AssignmentExpression
...
PropertyName:
LiteralPropertyName
...
LiteralPropertyName:
IdentifierName
...
Reserved Words
A reserved word is an IdentifierName that cannot be used as an Identifier.
--- |
1053 |
covered-ident-name-prop-name-literal-do-escaped.js |
---
description: do is a valid identifier name, using escape (PropertyName in a CoverParenthesizedExpressionAndArrowParameterList)
esid: prod-PropertyDefinition
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinitionList , PropertyDefinition
PropertyDefinition:
IdentifierReference
PropertyName : AssignmentExpression
MethodDefinition
... AssignmentExpression
...
PropertyName:
LiteralPropertyName
...
LiteralPropertyName:
IdentifierName
...
Reserved Words
A reserved word is an IdentifierName that cannot be used as an Identifier.
--- |
1037 |
covered-ident-name-prop-name-literal-else-escaped.js |
---
description: else is a valid identifier name, using escape (PropertyName in a CoverParenthesizedExpressionAndArrowParameterList)
esid: prod-PropertyDefinition
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinitionList , PropertyDefinition
PropertyDefinition:
IdentifierReference
PropertyName : AssignmentExpression
MethodDefinition
... AssignmentExpression
...
PropertyName:
LiteralPropertyName
...
LiteralPropertyName:
IdentifierName
...
Reserved Words
A reserved word is an IdentifierName that cannot be used as an Identifier.
--- |
1045 |
covered-ident-name-prop-name-literal-enum-escaped.js |
---
description: enum is a valid identifier name, using escape (PropertyName in a CoverParenthesizedExpressionAndArrowParameterList)
esid: prod-PropertyDefinition
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinitionList , PropertyDefinition
PropertyDefinition:
IdentifierReference
PropertyName : AssignmentExpression
MethodDefinition
... AssignmentExpression
...
PropertyName:
LiteralPropertyName
...
LiteralPropertyName:
IdentifierName
...
Reserved Words
A reserved word is an IdentifierName that cannot be used as an Identifier.
--- |
1045 |
covered-ident-name-prop-name-literal-export-escaped.js |
---
description: export is a valid identifier name, using escape (PropertyName in a CoverParenthesizedExpressionAndArrowParameterList)
esid: prod-PropertyDefinition
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinitionList , PropertyDefinition
PropertyDefinition:
IdentifierReference
PropertyName : AssignmentExpression
MethodDefinition
... AssignmentExpression
...
PropertyName:
LiteralPropertyName
...
LiteralPropertyName:
IdentifierName
...
Reserved Words
A reserved word is an IdentifierName that cannot be used as an Identifier.
--- |
1053 |
covered-ident-name-prop-name-literal-extends-escaped-ext.js |
---
description: extends is a valid identifier name, using extended escape (PropertyName in a CoverParenthesizedExpressionAndArrowParameterList)
esid: prod-PropertyDefinition
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinitionList , PropertyDefinition
PropertyDefinition:
IdentifierReference
PropertyName : AssignmentExpression
MethodDefinition
... AssignmentExpression
...
PropertyName:
LiteralPropertyName
...
LiteralPropertyName:
IdentifierName
...
Reserved Words
A reserved word is an IdentifierName that cannot be used as an Identifier.
--- |
1070 |
covered-ident-name-prop-name-literal-extends-escaped.js |
---
description: extends is a valid identifier name, using escape (PropertyName in a CoverParenthesizedExpressionAndArrowParameterList)
esid: prod-PropertyDefinition
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinitionList , PropertyDefinition
PropertyDefinition:
IdentifierReference
PropertyName : AssignmentExpression
MethodDefinition
... AssignmentExpression
...
PropertyName:
LiteralPropertyName
...
LiteralPropertyName:
IdentifierName
...
Reserved Words
A reserved word is an IdentifierName that cannot be used as an Identifier.
--- |
1057 |
covered-ident-name-prop-name-literal-extends.js |
---
description: extends is a valid identifier name (PropertyName in a CoverParenthesizedExpressionAndArrowParameterList)
esid: prod-PropertyDefinition
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinitionList , PropertyDefinition
PropertyDefinition:
IdentifierReference
PropertyName : AssignmentExpression
MethodDefinition
... AssignmentExpression
...
PropertyName:
LiteralPropertyName
...
LiteralPropertyName:
IdentifierName
...
Reserved Words
A reserved word is an IdentifierName that cannot be used as an Identifier.
--- |
1030 |
covered-ident-name-prop-name-literal-finally-escaped.js |
---
description: finally is a valid identifier name, using escape (PropertyName in a CoverParenthesizedExpressionAndArrowParameterList)
esid: prod-PropertyDefinition
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinitionList , PropertyDefinition
PropertyDefinition:
IdentifierReference
PropertyName : AssignmentExpression
MethodDefinition
... AssignmentExpression
...
PropertyName:
LiteralPropertyName
...
LiteralPropertyName:
IdentifierName
...
Reserved Words
A reserved word is an IdentifierName that cannot be used as an Identifier.
--- |
1057 |
covered-ident-name-prop-name-literal-for-escaped.js |
---
description: for is a valid identifier name, using escape (PropertyName in a CoverParenthesizedExpressionAndArrowParameterList)
esid: prod-PropertyDefinition
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinitionList , PropertyDefinition
PropertyDefinition:
IdentifierReference
PropertyName : AssignmentExpression
MethodDefinition
... AssignmentExpression
...
PropertyName:
LiteralPropertyName
...
LiteralPropertyName:
IdentifierName
...
Reserved Words
A reserved word is an IdentifierName that cannot be used as an Identifier.
--- |
1041 |
covered-ident-name-prop-name-literal-function-escaped.js |
---
description: function is a valid identifier name, using escape (PropertyName in a CoverParenthesizedExpressionAndArrowParameterList)
esid: prod-PropertyDefinition
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinitionList , PropertyDefinition
PropertyDefinition:
IdentifierReference
PropertyName : AssignmentExpression
MethodDefinition
... AssignmentExpression
...
PropertyName:
LiteralPropertyName
...
LiteralPropertyName:
IdentifierName
...
Reserved Words
A reserved word is an IdentifierName that cannot be used as an Identifier.
--- |
1061 |
covered-ident-name-prop-name-literal-if-escaped.js |
---
description: if is a valid identifier name, using escape (PropertyName in a CoverParenthesizedExpressionAndArrowParameterList)
esid: prod-PropertyDefinition
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinitionList , PropertyDefinition
PropertyDefinition:
IdentifierReference
PropertyName : AssignmentExpression
MethodDefinition
... AssignmentExpression
...
PropertyName:
LiteralPropertyName
...
LiteralPropertyName:
IdentifierName
...
Reserved Words
A reserved word is an IdentifierName that cannot be used as an Identifier.
--- |
1037 |
covered-ident-name-prop-name-literal-implements-escaped.js |
---
description: implements is a valid identifier name, using escape (PropertyName in a CoverParenthesizedExpressionAndArrowParameterList)
esid: prod-PropertyDefinition
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinitionList , PropertyDefinition
PropertyDefinition:
IdentifierReference
PropertyName : AssignmentExpression
MethodDefinition
... AssignmentExpression
...
PropertyName:
LiteralPropertyName
...
LiteralPropertyName:
IdentifierName
...
Reserved Words
A reserved word is an IdentifierName that cannot be used as an Identifier.
--- |
1083 |
covered-ident-name-prop-name-literal-import-escaped.js |
---
description: import is a valid identifier name, using escape (PropertyName in a CoverParenthesizedExpressionAndArrowParameterList)
esid: prod-PropertyDefinition
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinitionList , PropertyDefinition
PropertyDefinition:
IdentifierReference
PropertyName : AssignmentExpression
MethodDefinition
... AssignmentExpression
...
PropertyName:
LiteralPropertyName
...
LiteralPropertyName:
IdentifierName
...
Reserved Words
A reserved word is an IdentifierName that cannot be used as an Identifier.
--- |
1053 |
covered-ident-name-prop-name-literal-in-escaped.js |
---
description: in is a valid identifier name, using escape (PropertyName in a CoverParenthesizedExpressionAndArrowParameterList)
esid: prod-PropertyDefinition
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinitionList , PropertyDefinition
PropertyDefinition:
IdentifierReference
PropertyName : AssignmentExpression
MethodDefinition
... AssignmentExpression
...
PropertyName:
LiteralPropertyName
...
LiteralPropertyName:
IdentifierName
...
Reserved Words
A reserved word is an IdentifierName that cannot be used as an Identifier.
--- |
1037 |
covered-ident-name-prop-name-literal-instanceof-escaped.js |
---
description: instanceof is a valid identifier name, using escape (PropertyName in a CoverParenthesizedExpressionAndArrowParameterList)
esid: prod-PropertyDefinition
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinitionList , PropertyDefinition
PropertyDefinition:
IdentifierReference
PropertyName : AssignmentExpression
MethodDefinition
... AssignmentExpression
...
PropertyName:
LiteralPropertyName
...
LiteralPropertyName:
IdentifierName
...
Reserved Words
A reserved word is an IdentifierName that cannot be used as an Identifier.
--- |
1069 |
covered-ident-name-prop-name-literal-interface-escaped.js |
---
description: interface is a valid identifier name, using escape (PropertyName in a CoverParenthesizedExpressionAndArrowParameterList)
esid: prod-PropertyDefinition
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinitionList , PropertyDefinition
PropertyDefinition:
IdentifierReference
PropertyName : AssignmentExpression
MethodDefinition
... AssignmentExpression
...
PropertyName:
LiteralPropertyName
...
LiteralPropertyName:
IdentifierName
...
Reserved Words
A reserved word is an IdentifierName that cannot be used as an Identifier.
--- |
1079 |
covered-ident-name-prop-name-literal-let-escaped.js |
---
description: let is a valid identifier name, using escape (PropertyName in a CoverParenthesizedExpressionAndArrowParameterList)
esid: prod-PropertyDefinition
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinitionList , PropertyDefinition
PropertyDefinition:
IdentifierReference
PropertyName : AssignmentExpression
MethodDefinition
... AssignmentExpression
...
PropertyName:
LiteralPropertyName
...
LiteralPropertyName:
IdentifierName
...
Reserved Words
A reserved word is an IdentifierName that cannot be used as an Identifier.
--- |
1055 |
covered-ident-name-prop-name-literal-new-escaped.js |
---
description: new is a valid identifier name, using escape (PropertyName in a CoverParenthesizedExpressionAndArrowParameterList)
esid: prod-PropertyDefinition
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinitionList , PropertyDefinition
PropertyDefinition:
IdentifierReference
PropertyName : AssignmentExpression
MethodDefinition
... AssignmentExpression
...
PropertyName:
LiteralPropertyName
...
LiteralPropertyName:
IdentifierName
...
Reserved Words
A reserved word is an IdentifierName that cannot be used as an Identifier.
--- |
1041 |
covered-ident-name-prop-name-literal-package-escaped.js |
---
description: package is a valid identifier name, using escape (PropertyName in a CoverParenthesizedExpressionAndArrowParameterList)
esid: prod-PropertyDefinition
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinitionList , PropertyDefinition
PropertyDefinition:
IdentifierReference
PropertyName : AssignmentExpression
MethodDefinition
... AssignmentExpression
...
PropertyName:
LiteralPropertyName
...
LiteralPropertyName:
IdentifierName
...
Reserved Words
A reserved word is an IdentifierName that cannot be used as an Identifier.
--- |
1071 |
covered-ident-name-prop-name-literal-private-escaped.js |
---
description: private is a valid identifier name, using escape (PropertyName in a CoverParenthesizedExpressionAndArrowParameterList)
esid: prod-PropertyDefinition
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinitionList , PropertyDefinition
PropertyDefinition:
IdentifierReference
PropertyName : AssignmentExpression
MethodDefinition
... AssignmentExpression
...
PropertyName:
LiteralPropertyName
...
LiteralPropertyName:
IdentifierName
...
Reserved Words
A reserved word is an IdentifierName that cannot be used as an Identifier.
--- |
1071 |
covered-ident-name-prop-name-literal-protected-escaped.js |
---
description: protected is a valid identifier name, using escape (PropertyName in a CoverParenthesizedExpressionAndArrowParameterList)
esid: prod-PropertyDefinition
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinitionList , PropertyDefinition
PropertyDefinition:
IdentifierReference
PropertyName : AssignmentExpression
MethodDefinition
... AssignmentExpression
...
PropertyName:
LiteralPropertyName
...
LiteralPropertyName:
IdentifierName
...
Reserved Words
A reserved word is an IdentifierName that cannot be used as an Identifier.
--- |
1079 |
covered-ident-name-prop-name-literal-public-escaped.js |
---
description: public is a valid identifier name, using escape (PropertyName in a CoverParenthesizedExpressionAndArrowParameterList)
esid: prod-PropertyDefinition
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinitionList , PropertyDefinition
PropertyDefinition:
IdentifierReference
PropertyName : AssignmentExpression
MethodDefinition
... AssignmentExpression
...
PropertyName:
LiteralPropertyName
...
LiteralPropertyName:
IdentifierName
...
Reserved Words
A reserved word is an IdentifierName that cannot be used as an Identifier.
--- |
1067 |
covered-ident-name-prop-name-literal-return-escaped.js |
---
description: return is a valid identifier name, using escape (PropertyName in a CoverParenthesizedExpressionAndArrowParameterList)
esid: prod-PropertyDefinition
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinitionList , PropertyDefinition
PropertyDefinition:
IdentifierReference
PropertyName : AssignmentExpression
MethodDefinition
... AssignmentExpression
...
PropertyName:
LiteralPropertyName
...
LiteralPropertyName:
IdentifierName
...
Reserved Words
A reserved word is an IdentifierName that cannot be used as an Identifier.
--- |
1053 |
covered-ident-name-prop-name-literal-static-escaped.js |
---
description: static is a valid identifier name, using escape (PropertyName in a CoverParenthesizedExpressionAndArrowParameterList)
esid: prod-PropertyDefinition
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinitionList , PropertyDefinition
PropertyDefinition:
IdentifierReference
PropertyName : AssignmentExpression
MethodDefinition
... AssignmentExpression
...
PropertyName:
LiteralPropertyName
...
LiteralPropertyName:
IdentifierName
...
Reserved Words
A reserved word is an IdentifierName that cannot be used as an Identifier.
--- |
1067 |
covered-ident-name-prop-name-literal-super-escaped.js |
---
description: super is a valid identifier name, using escape (PropertyName in a CoverParenthesizedExpressionAndArrowParameterList)
esid: prod-PropertyDefinition
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinitionList , PropertyDefinition
PropertyDefinition:
IdentifierReference
PropertyName : AssignmentExpression
MethodDefinition
... AssignmentExpression
...
PropertyName:
LiteralPropertyName
...
LiteralPropertyName:
IdentifierName
...
Reserved Words
A reserved word is an IdentifierName that cannot be used as an Identifier.
--- |
1049 |
covered-ident-name-prop-name-literal-switch-escaped.js |
---
description: switch is a valid identifier name, using escape (PropertyName in a CoverParenthesizedExpressionAndArrowParameterList)
esid: prod-PropertyDefinition
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinitionList , PropertyDefinition
PropertyDefinition:
IdentifierReference
PropertyName : AssignmentExpression
MethodDefinition
... AssignmentExpression
...
PropertyName:
LiteralPropertyName
...
LiteralPropertyName:
IdentifierName
...
Reserved Words
A reserved word is an IdentifierName that cannot be used as an Identifier.
--- |
1053 |
covered-ident-name-prop-name-literal-this-escaped.js |
---
description: this is a valid identifier name, using escape (PropertyName in a CoverParenthesizedExpressionAndArrowParameterList)
esid: prod-PropertyDefinition
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinitionList , PropertyDefinition
PropertyDefinition:
IdentifierReference
PropertyName : AssignmentExpression
MethodDefinition
... AssignmentExpression
...
PropertyName:
LiteralPropertyName
...
LiteralPropertyName:
IdentifierName
...
Reserved Words
A reserved word is an IdentifierName that cannot be used as an Identifier.
--- |
1045 |
covered-ident-name-prop-name-literal-throw-escaped.js |
---
description: throw is a valid identifier name, using escape (PropertyName in a CoverParenthesizedExpressionAndArrowParameterList)
esid: prod-PropertyDefinition
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinitionList , PropertyDefinition
PropertyDefinition:
IdentifierReference
PropertyName : AssignmentExpression
MethodDefinition
... AssignmentExpression
...
PropertyName:
LiteralPropertyName
...
LiteralPropertyName:
IdentifierName
...
Reserved Words
A reserved word is an IdentifierName that cannot be used as an Identifier.
--- |
1049 |
covered-ident-name-prop-name-literal-try-escaped.js |
---
description: try is a valid identifier name, using escape (PropertyName in a CoverParenthesizedExpressionAndArrowParameterList)
esid: prod-PropertyDefinition
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinitionList , PropertyDefinition
PropertyDefinition:
IdentifierReference
PropertyName : AssignmentExpression
MethodDefinition
... AssignmentExpression
...
PropertyName:
LiteralPropertyName
...
LiteralPropertyName:
IdentifierName
...
Reserved Words
A reserved word is an IdentifierName that cannot be used as an Identifier.
--- |
1041 |
covered-ident-name-prop-name-literal-typeof-escaped.js |
---
description: typeof is a valid identifier name, using escape (PropertyName in a CoverParenthesizedExpressionAndArrowParameterList)
esid: prod-PropertyDefinition
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinitionList , PropertyDefinition
PropertyDefinition:
IdentifierReference
PropertyName : AssignmentExpression
MethodDefinition
... AssignmentExpression
...
PropertyName:
LiteralPropertyName
...
LiteralPropertyName:
IdentifierName
...
Reserved Words
A reserved word is an IdentifierName that cannot be used as an Identifier.
--- |
1053 |
covered-ident-name-prop-name-literal-var-escaped.js |
---
description: var is a valid identifier name, using escape (PropertyName in a CoverParenthesizedExpressionAndArrowParameterList)
esid: prod-PropertyDefinition
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinitionList , PropertyDefinition
PropertyDefinition:
IdentifierReference
PropertyName : AssignmentExpression
MethodDefinition
... AssignmentExpression
...
PropertyName:
LiteralPropertyName
...
LiteralPropertyName:
IdentifierName
...
Reserved Words
A reserved word is an IdentifierName that cannot be used as an Identifier.
--- |
1041 |
covered-ident-name-prop-name-literal-void-escaped.js |
---
description: void is a valid identifier name, using escape (PropertyName in a CoverParenthesizedExpressionAndArrowParameterList)
esid: prod-PropertyDefinition
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinitionList , PropertyDefinition
PropertyDefinition:
IdentifierReference
PropertyName : AssignmentExpression
MethodDefinition
... AssignmentExpression
...
PropertyName:
LiteralPropertyName
...
LiteralPropertyName:
IdentifierName
...
Reserved Words
A reserved word is an IdentifierName that cannot be used as an Identifier.
--- |
1045 |
covered-ident-name-prop-name-literal-while-escaped.js |
---
description: while is a valid identifier name, using escape (PropertyName in a CoverParenthesizedExpressionAndArrowParameterList)
esid: prod-PropertyDefinition
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinitionList , PropertyDefinition
PropertyDefinition:
IdentifierReference
PropertyName : AssignmentExpression
MethodDefinition
... AssignmentExpression
...
PropertyName:
LiteralPropertyName
...
LiteralPropertyName:
IdentifierName
...
Reserved Words
A reserved word is an IdentifierName that cannot be used as an Identifier.
--- |
1049 |
covered-ident-name-prop-name-literal-with-escaped.js |
---
description: with is a valid identifier name, using escape (PropertyName in a CoverParenthesizedExpressionAndArrowParameterList)
esid: prod-PropertyDefinition
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinitionList , PropertyDefinition
PropertyDefinition:
IdentifierReference
PropertyName : AssignmentExpression
MethodDefinition
... AssignmentExpression
...
PropertyName:
LiteralPropertyName
...
LiteralPropertyName:
IdentifierName
...
Reserved Words
A reserved word is an IdentifierName that cannot be used as an Identifier.
--- |
1045 |
cpn-obj-lit-computed-property-name-from-additive-expression-add.js |
---
description: Computed property name from additive expression "add" (ComputedPropertyName in ObjectLiteral)
esid: prod-ComputedPropertyName
features: [computed-property-names]
flags: [generated]
info: |
ObjectLiteral:
{ PropertyDefinitionList }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinition:
PropertyName: AssignmentExpression
PropertyName:
ComputedPropertyName
ComputedPropertyName:
[ AssignmentExpression ]
--- |
849 |
cpn-obj-lit-computed-property-name-from-additive-expression-subtract.js |
---
description: Computed property name from additive expression "subtract" (ComputedPropertyName in ObjectLiteral)
esid: prod-ComputedPropertyName
features: [computed-property-names]
flags: [generated]
info: |
ObjectLiteral:
{ PropertyDefinitionList }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinition:
PropertyName: AssignmentExpression
PropertyName:
ComputedPropertyName
ComputedPropertyName:
[ AssignmentExpression ]
--- |
859 |
cpn-obj-lit-computed-property-name-from-arrow-function-expression.js |
---
description: Computed property name from arrow function (ComputedPropertyName in ObjectLiteral)
esid: prod-ComputedPropertyName
features: [computed-property-names]
flags: [generated]
info: |
ObjectLiteral:
{ PropertyDefinitionList }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinition:
PropertyName: AssignmentExpression
PropertyName:
ComputedPropertyName
ComputedPropertyName:
[ AssignmentExpression ]
--- |
852 |
cpn-obj-lit-computed-property-name-from-assignment-expression-assignment.js |
---
description: Computed property name from assignment expression (ComputedPropertyName in ObjectLiteral)
esid: prod-ComputedPropertyName
features: [computed-property-names]
flags: [generated]
info: |
ObjectLiteral:
{ PropertyDefinitionList }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinition:
PropertyName: AssignmentExpression
PropertyName:
ComputedPropertyName
ComputedPropertyName:
[ AssignmentExpression ]
--- |
890 |
cpn-obj-lit-computed-property-name-from-assignment-expression-bitwise-or.js |
---
description: Computed property name from assignment expression bitwise or (ComputedPropertyName in ObjectLiteral)
esid: prod-ComputedPropertyName
features: [computed-property-names]
flags: [generated]
info: |
ObjectLiteral:
{ PropertyDefinitionList }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinition:
PropertyName: AssignmentExpression
PropertyName:
ComputedPropertyName
ComputedPropertyName:
[ AssignmentExpression ]
--- |
904 |
cpn-obj-lit-computed-property-name-from-assignment-expression-coalesce.js |
---
description: Computed property name from assignment expression coalesce (ComputedPropertyName in ObjectLiteral)
esid: prod-ComputedPropertyName
features: [computed-property-names, logical-assignment-operators]
flags: [generated]
info: |
ObjectLiteral:
{ PropertyDefinitionList }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinition:
PropertyName: AssignmentExpression
PropertyName:
ComputedPropertyName
ComputedPropertyName:
[ AssignmentExpression ]
--- |
936 |
cpn-obj-lit-computed-property-name-from-assignment-expression-logical-and.js |
---
description: Computed property name from assignment expression logical and (ComputedPropertyName in ObjectLiteral)
esid: prod-ComputedPropertyName
features: [computed-property-names, logical-assignment-operators]
flags: [generated]
info: |
ObjectLiteral:
{ PropertyDefinitionList }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinition:
PropertyName: AssignmentExpression
PropertyName:
ComputedPropertyName
ComputedPropertyName:
[ AssignmentExpression ]
--- |
939 |
cpn-obj-lit-computed-property-name-from-assignment-expression-logical-or.js |
---
description: Computed property name from assignment expression logical or (ComputedPropertyName in ObjectLiteral)
esid: prod-ComputedPropertyName
features: [computed-property-names, logical-assignment-operators]
flags: [generated]
info: |
ObjectLiteral:
{ PropertyDefinitionList }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinition:
PropertyName: AssignmentExpression
PropertyName:
ComputedPropertyName
ComputedPropertyName:
[ AssignmentExpression ]
--- |
937 |
cpn-obj-lit-computed-property-name-from-async-arrow-function-expression.js |
---
description: Computed property name from function expression (ComputedPropertyName in ObjectLiteral)
esid: prod-ComputedPropertyName
features: [computed-property-names]
flags: [generated]
info: |
ObjectLiteral:
{ PropertyDefinitionList }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinition:
PropertyName: AssignmentExpression
PropertyName:
ComputedPropertyName
ComputedPropertyName:
[ AssignmentExpression ]
--- |
878 |
cpn-obj-lit-computed-property-name-from-await-expression.js |
---
description: Computed property name from condition expression (ComputedPropertyName in ObjectLiteral)
esid: prod-ComputedPropertyName
features: [computed-property-names, top-level-await]
flags: [generated, async, module]
info: |
ObjectLiteral:
{ PropertyDefinitionList }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinition:
PropertyName: AssignmentExpression
PropertyName:
ComputedPropertyName
ComputedPropertyName:
[ AssignmentExpression ]
--- |
923 |
cpn-obj-lit-computed-property-name-from-condition-expression-false.js |
---
description: Computed property name from condition expression (ComputedPropertyName in ObjectLiteral)
esid: prod-ComputedPropertyName
features: [computed-property-names]
flags: [generated]
info: |
ObjectLiteral:
{ PropertyDefinitionList }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinition:
PropertyName: AssignmentExpression
PropertyName:
ComputedPropertyName
ComputedPropertyName:
[ AssignmentExpression ]
--- |
871 |
cpn-obj-lit-computed-property-name-from-condition-expression-true.js |
---
description: Computed property name from condition expression (ComputedPropertyName in ObjectLiteral)
esid: prod-ComputedPropertyName
features: [computed-property-names]
flags: [generated]
info: |
ObjectLiteral:
{ PropertyDefinitionList }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinition:
PropertyName: AssignmentExpression
PropertyName:
ComputedPropertyName
ComputedPropertyName:
[ AssignmentExpression ]
--- |
867 |
cpn-obj-lit-computed-property-name-from-decimal-e-notational-literal.js |
---
description: Computed property name from decimal e notational literal (ComputedPropertyName in ObjectLiteral)
esid: prod-ComputedPropertyName
features: [computed-property-names]
flags: [generated]
info: |
ObjectLiteral:
{ PropertyDefinitionList }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinition:
PropertyName: AssignmentExpression
PropertyName:
ComputedPropertyName
ComputedPropertyName:
[ AssignmentExpression ]
--- |
854 |
cpn-obj-lit-computed-property-name-from-decimal-literal.js |
---
description: Computed property name from decimal literal (ComputedPropertyName in ObjectLiteral)
esid: prod-ComputedPropertyName
features: [computed-property-names]
flags: [generated]
info: |
ObjectLiteral:
{ PropertyDefinitionList }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinition:
PropertyName: AssignmentExpression
PropertyName:
ComputedPropertyName
ComputedPropertyName:
[ AssignmentExpression ]
--- |
825 |
cpn-obj-lit-computed-property-name-from-exponetiation-expression.js |
---
description: Computed property name from exponentiation expression (ComputedPropertyName in ObjectLiteral)
esid: prod-ComputedPropertyName
features: [computed-property-names, exponentiation]
flags: [generated]
info: |
ObjectLiteral:
{ PropertyDefinitionList }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinition:
PropertyName: AssignmentExpression
PropertyName:
ComputedPropertyName
ComputedPropertyName:
[ AssignmentExpression ]
--- |
869 |
cpn-obj-lit-computed-property-name-from-expression-coalesce.js |
---
description: Computed property name from coalesce (ComputedPropertyName in ObjectLiteral)
esid: prod-ComputedPropertyName
features: [computed-property-names]
flags: [generated]
info: |
ObjectLiteral:
{ PropertyDefinitionList }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinition:
PropertyName: AssignmentExpression
PropertyName:
ComputedPropertyName
ComputedPropertyName:
[ AssignmentExpression ]
--- |
871 |
cpn-obj-lit-computed-property-name-from-expression-logical-and.js |
---
description: Computed property name from logical and (ComputedPropertyName in ObjectLiteral)
esid: prod-ComputedPropertyName
features: [computed-property-names]
flags: [generated]
info: |
ObjectLiteral:
{ PropertyDefinitionList }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinition:
PropertyName: AssignmentExpression
PropertyName:
ComputedPropertyName
ComputedPropertyName:
[ AssignmentExpression ]
--- |
873 |
cpn-obj-lit-computed-property-name-from-expression-logical-or.js |
---
description: Computed property name from logical or (ComputedPropertyName in ObjectLiteral)
esid: prod-ComputedPropertyName
features: [computed-property-names]
flags: [generated]
info: |
ObjectLiteral:
{ PropertyDefinitionList }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinition:
PropertyName: AssignmentExpression
PropertyName:
ComputedPropertyName
ComputedPropertyName:
[ AssignmentExpression ]
--- |
871 |
cpn-obj-lit-computed-property-name-from-function-declaration.js |
---
description: Computed property name from function (ComputedPropertyName in ObjectLiteral)
esid: prod-ComputedPropertyName
features: [computed-property-names]
flags: [generated]
info: |
ObjectLiteral:
{ PropertyDefinitionList }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinition:
PropertyName: AssignmentExpression
PropertyName:
ComputedPropertyName
ComputedPropertyName:
[ AssignmentExpression ]
--- |
839 |
cpn-obj-lit-computed-property-name-from-function-expression.js |
---
description: Computed property name from function expression (ComputedPropertyName in ObjectLiteral)
esid: prod-ComputedPropertyName
features: [computed-property-names]
flags: [generated]
info: |
ObjectLiteral:
{ PropertyDefinitionList }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinition:
PropertyName: AssignmentExpression
PropertyName:
ComputedPropertyName
ComputedPropertyName:
[ AssignmentExpression ]
--- |
866 |
cpn-obj-lit-computed-property-name-from-generator-function-declaration.js |
---
description: Computed property name from generator function (ComputedPropertyName in ObjectLiteral)
esid: prod-ComputedPropertyName
features: [computed-property-names]
flags: [generated]
info: |
ObjectLiteral:
{ PropertyDefinitionList }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinition:
PropertyName: AssignmentExpression
PropertyName:
ComputedPropertyName
ComputedPropertyName:
[ AssignmentExpression ]
--- |
872 |
cpn-obj-lit-computed-property-name-from-identifier.js |
---
description: Computed property name from string literal (ComputedPropertyName in ObjectLiteral)
esid: prod-ComputedPropertyName
features: [computed-property-names]
flags: [generated]
info: |
ObjectLiteral:
{ PropertyDefinitionList }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinition:
PropertyName: AssignmentExpression
PropertyName:
ComputedPropertyName
ComputedPropertyName:
[ AssignmentExpression ]
--- |
831 |
cpn-obj-lit-computed-property-name-from-integer-e-notational-literal.js |
---
description: Computed property name from numeric literal (ComputedPropertyName in ObjectLiteral)
esid: prod-ComputedPropertyName
features: [computed-property-names]
flags: [generated]
info: |
ObjectLiteral:
{ PropertyDefinitionList }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinition:
PropertyName: AssignmentExpression
PropertyName:
ComputedPropertyName
ComputedPropertyName:
[ AssignmentExpression ]
--- |
832 |
cpn-obj-lit-computed-property-name-from-integer-separators.js |
---
description: Computed property name from integer with separators (ComputedPropertyName in ObjectLiteral)
esid: prod-ComputedPropertyName
features: [computed-property-names]
flags: [generated]
info: |
ObjectLiteral:
{ PropertyDefinitionList }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinition:
PropertyName: AssignmentExpression
PropertyName:
ComputedPropertyName
ComputedPropertyName:
[ AssignmentExpression ]
--- |
914 |
cpn-obj-lit-computed-property-name-from-math.js |
---
description: Computed property name from math (ComputedPropertyName in ObjectLiteral)
esid: prod-ComputedPropertyName
features: [computed-property-names, exponentiation]
flags: [generated]
info: |
ObjectLiteral:
{ PropertyDefinitionList }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinition:
PropertyName: AssignmentExpression
PropertyName:
ComputedPropertyName
ComputedPropertyName:
[ AssignmentExpression ]
--- |
897 |
cpn-obj-lit-computed-property-name-from-multiplicative-expression-div.js |
---
description: Computed property name from multiplicative expression "divide" (ComputedPropertyName in ObjectLiteral)
esid: prod-ComputedPropertyName
features: [computed-property-names]
flags: [generated]
info: |
ObjectLiteral:
{ PropertyDefinitionList }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinition:
PropertyName: AssignmentExpression
PropertyName:
ComputedPropertyName
ComputedPropertyName:
[ AssignmentExpression ]
--- |
864 |
cpn-obj-lit-computed-property-name-from-multiplicative-expression-mult.js |
---
description: Computed property name from multiplicative expression "multiply" (ComputedPropertyName in ObjectLiteral)
esid: prod-ComputedPropertyName
features: [computed-property-names]
flags: [generated]
info: |
ObjectLiteral:
{ PropertyDefinitionList }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinition:
PropertyName: AssignmentExpression
PropertyName:
ComputedPropertyName
ComputedPropertyName:
[ AssignmentExpression ]
--- |
867 |
cpn-obj-lit-computed-property-name-from-null.js |
---
description: Computed property name from condition expression (ComputedPropertyName in ObjectLiteral)
esid: prod-ComputedPropertyName
features: [computed-property-names]
flags: [generated]
info: |
ObjectLiteral:
{ PropertyDefinitionList }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinition:
PropertyName: AssignmentExpression
PropertyName:
ComputedPropertyName
ComputedPropertyName:
[ AssignmentExpression ]
--- |
831 |
cpn-obj-lit-computed-property-name-from-numeric-literal.js |
---
description: Computed property name from numeric literal (ComputedPropertyName in ObjectLiteral)
esid: prod-ComputedPropertyName
features: [computed-property-names]
flags: [generated]
info: |
ObjectLiteral:
{ PropertyDefinitionList }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinition:
PropertyName: AssignmentExpression
PropertyName:
ComputedPropertyName
ComputedPropertyName:
[ AssignmentExpression ]
--- |
819 |
cpn-obj-lit-computed-property-name-from-string-literal.js |
---
description: Computed property name from string literal (ComputedPropertyName in ObjectLiteral)
esid: prod-ComputedPropertyName
features: [computed-property-names]
flags: [generated]
info: |
ObjectLiteral:
{ PropertyDefinitionList }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinition:
PropertyName: AssignmentExpression
PropertyName:
ComputedPropertyName
ComputedPropertyName:
[ AssignmentExpression ]
--- |
829 |
cpn-obj-lit-computed-property-name-from-yield-expression.js |
---
description: Computed property name from yield expression (ComputedPropertyName in ObjectLiteral)
esid: prod-ComputedPropertyName
features: [computed-property-names]
flags: [generated]
info: |
ObjectLiteral:
{ PropertyDefinitionList }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinition:
PropertyName: AssignmentExpression
PropertyName:
ComputedPropertyName
ComputedPropertyName:
[ AssignmentExpression ]
--- |
912 |
dstr |
|
|
fn-name-accessor-get.js |
---
es6id: 14.3.9
description: Assignment of function `name` attribute ("get" accessor)
info: |
MethodDefinition : get PropertyName ( ) { FunctionBody }
[...]
8. Perform SetFunctionName(closure, propKey, "get").
includes: [propertyHelper.js]
features: [Symbol]
--- |
1120 |
fn-name-accessor-set.js |
---
es6id: 14.3.9
description: Assignment of function `name` attribute ("set" accessor)
info: |
MethodDefinition :
set PropertyName ( PropertySetParameterList ) { FunctionBody }
[...]
7. Perform SetFunctionName(closure, propKey, "set").
includes: [propertyHelper.js]
features: [Symbol]
--- |
1156 |
fn-name-arrow.js |
---
es6id: 12.2.6.9
description: Assignment of function `name` attribute (ArrowFunction)
info: |
6. If IsAnonymousFunctionDefinition(AssignmentExpression) is true, then
a. Let hasNameProperty be HasOwnProperty(propValue, "name").
b. ReturnIfAbrupt(hasNameProperty).
c. If hasNameProperty is false, perform SetFunctionName(propValue,
propKey).
includes: [propertyHelper.js]
features: [Symbol]
--- |
1091 |
fn-name-class.js |
---
es6id: 12.2.6.9
description: Assignment of function `name` attribute (ClassExpression)
info: |
6. If IsAnonymousFunctionDefinition(AssignmentExpression) is true, then
a. Let hasNameProperty be HasOwnProperty(propValue, "name").
b. ReturnIfAbrupt(hasNameProperty).
c. If hasNameProperty is false, perform SetFunctionName(propValue,
propKey).
includes: [propertyHelper.js]
features: [class, Symbol]
--- |
1150 |
fn-name-cover.js |
---
es6id: 12.2.6.9
description: >
Assignment of function `name` attribute (CoverParenthesizedExpression)
info: |
6. If IsAnonymousFunctionDefinition(AssignmentExpression) is true, then
a. Let hasNameProperty be HasOwnProperty(propValue, "name").
b. ReturnIfAbrupt(hasNameProperty).
c. If hasNameProperty is false, perform SetFunctionName(propValue,
propKey).
includes: [propertyHelper.js]
features: [Symbol]
--- |
1191 |
fn-name-fn.js |
---
es6id: 12.2.6.9
description: Assignment of function `name` attribute (FunctionExpression)
info: |
6. If IsAnonymousFunctionDefinition(AssignmentExpression) is true, then
a. Let hasNameProperty be HasOwnProperty(propValue, "name").
b. ReturnIfAbrupt(hasNameProperty).
c. If hasNameProperty is false, perform SetFunctionName(propValue,
propKey).
includes: [propertyHelper.js]
features: [Symbol]
--- |
1166 |
fn-name-gen.js |
---
es6id: 12.2.6.9
description: >
Assignment of function `name` attribute (GeneratorExpression)
info: |
6. If IsAnonymousFunctionDefinition(AssignmentExpression) is true, then
a. Let hasNameProperty be HasOwnProperty(propValue, "name").
b. ReturnIfAbrupt(hasNameProperty).
c. If hasNameProperty is false, perform SetFunctionName(propValue,
propKey).
includes: [propertyHelper.js]
features: [generators, Symbol]
--- |
1189 |
getter-body-strict-inside.js |
---
es5id: 11.1.5_6-2-2-s
description: >
Strict Mode - SyntaxError is thrown when an assignment to a
reserved word or a future reserved word is made inside a strict
mode FunctionBody of a PropertyAssignment
negative:
phase: parse
type: SyntaxError
flags: [noStrict]
--- |
537 |
getter-body-strict-outside-strict.js |
---
es5id: 11.1.5_6-2-1-s
description: >
Strict Mode - SyntaxError is thrown when an assignment to a
reserved word or a future reserved word is contained in strict code
negative:
phase: parse
type: SyntaxError
flags: [onlyStrict]
--- |
493 |
getter-param-dflt.js |
---
esid: sec-method-definitions
es6id: 14.3
description: >
Get accessor method may not have a formal parameter (regardless of the
presence of an initializer)
info: |
Syntax
MethodDefinition[Yield] :
get PropertyName[?Yield] ( ) { FunctionBody }
features: [default-parameters]
negative:
phase: parse
type: SyntaxError
--- |
564 |
getter-prop-desc.js |
---
esid: sec-object-initializer-runtime-semantics-evaluation
es6id: 12.2.6.8
description: Property descriptor of "set" accessor methods
info: |
ObjectLiteral:
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
1. Let obj be ObjectCreate(%ObjectPrototype%).
2. Let status be the result of performing PropertyDefinitionEvaluation of
PropertyDefinitionList with arguments obj and true.
3. ReturnIfAbrupt(status).
4. Return obj.
14.3.8 Runtime Semantics: PropertyDefinitionEvaluation
MethodDefinition : get PropertyName ( ) { FunctionBody}
[...]
9. Let desc be the PropertyDescriptor{[[Get]]: closure, [[Enumerable]]:
enumerable, [[Configurable]]: true}.
[...]
includes: [propertyHelper.js]
--- |
1325 |
getter-super-prop.js |
---
es6id: 12.2.5
description: >
super method calls in object literal getter
--- |
804 |
ident-name-method-def-break-escaped.js |
---
description: break is a valid identifier name, using escape (MethodDefinition)
esid: prod-PropertyDefinition
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinitionList , PropertyDefinition
PropertyDefinition:
MethodDefinition
...
MethodDefinition:
PropertyName ( UniqueFormalParameters ){ FunctionBody }
PropertyName:
LiteralPropertyName
...
LiteralPropertyName:
IdentifierName
...
Reserved Words
A reserved word is an IdentifierName that cannot be used as an Identifier.
--- |
1000 |
ident-name-method-def-case-escaped.js |
---
description: case is a valid identifier name, using escape (MethodDefinition)
esid: prod-PropertyDefinition
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinitionList , PropertyDefinition
PropertyDefinition:
MethodDefinition
...
MethodDefinition:
PropertyName ( UniqueFormalParameters ){ FunctionBody }
PropertyName:
LiteralPropertyName
...
LiteralPropertyName:
IdentifierName
...
Reserved Words
A reserved word is an IdentifierName that cannot be used as an Identifier.
--- |
996 |
ident-name-method-def-catch-escaped.js |
---
description: catch is a valid identifier name, using escape (MethodDefinition)
esid: prod-PropertyDefinition
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinitionList , PropertyDefinition
PropertyDefinition:
MethodDefinition
...
MethodDefinition:
PropertyName ( UniqueFormalParameters ){ FunctionBody }
PropertyName:
LiteralPropertyName
...
LiteralPropertyName:
IdentifierName
...
Reserved Words
A reserved word is an IdentifierName that cannot be used as an Identifier.
--- |
1000 |
ident-name-method-def-class-escaped.js |
---
description: class is a valid identifier name, using escape (MethodDefinition)
esid: prod-PropertyDefinition
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinitionList , PropertyDefinition
PropertyDefinition:
MethodDefinition
...
MethodDefinition:
PropertyName ( UniqueFormalParameters ){ FunctionBody }
PropertyName:
LiteralPropertyName
...
LiteralPropertyName:
IdentifierName
...
Reserved Words
A reserved word is an IdentifierName that cannot be used as an Identifier.
--- |
1000 |
ident-name-method-def-const-escaped.js |
---
description: const is a valid identifier name, using escape (MethodDefinition)
esid: prod-PropertyDefinition
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinitionList , PropertyDefinition
PropertyDefinition:
MethodDefinition
...
MethodDefinition:
PropertyName ( UniqueFormalParameters ){ FunctionBody }
PropertyName:
LiteralPropertyName
...
LiteralPropertyName:
IdentifierName
...
Reserved Words
A reserved word is an IdentifierName that cannot be used as an Identifier.
--- |
1000 |
ident-name-method-def-continue-escaped.js |
---
description: continue is a valid identifier name, using escape (MethodDefinition)
esid: prod-PropertyDefinition
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinitionList , PropertyDefinition
PropertyDefinition:
MethodDefinition
...
MethodDefinition:
PropertyName ( UniqueFormalParameters ){ FunctionBody }
PropertyName:
LiteralPropertyName
...
LiteralPropertyName:
IdentifierName
...
Reserved Words
A reserved word is an IdentifierName that cannot be used as an Identifier.
--- |
1012 |
ident-name-method-def-debugger-escaped.js |
---
description: debugger is a valid identifier name, using escape (MethodDefinition)
esid: prod-PropertyDefinition
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinitionList , PropertyDefinition
PropertyDefinition:
MethodDefinition
...
MethodDefinition:
PropertyName ( UniqueFormalParameters ){ FunctionBody }
PropertyName:
LiteralPropertyName
...
LiteralPropertyName:
IdentifierName
...
Reserved Words
A reserved word is an IdentifierName that cannot be used as an Identifier.
--- |
1012 |
ident-name-method-def-default-escaped-ext.js |
---
description: default is a valid identifier name, using extended escape (MethodDefinition)
esid: prod-PropertyDefinition
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinitionList , PropertyDefinition
PropertyDefinition:
MethodDefinition
...
MethodDefinition:
PropertyName ( UniqueFormalParameters ){ FunctionBody }
PropertyName:
LiteralPropertyName
...
LiteralPropertyName:
IdentifierName
...
Reserved Words
A reserved word is an IdentifierName that cannot be used as an Identifier.
--- |
1021 |
ident-name-method-def-default-escaped.js |
---
description: default is a valid identifier name, using escape (MethodDefinition)
esid: prod-PropertyDefinition
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinitionList , PropertyDefinition
PropertyDefinition:
MethodDefinition
...
MethodDefinition:
PropertyName ( UniqueFormalParameters ){ FunctionBody }
PropertyName:
LiteralPropertyName
...
LiteralPropertyName:
IdentifierName
...
Reserved Words
A reserved word is an IdentifierName that cannot be used as an Identifier.
--- |
1008 |
ident-name-method-def-default.js |
---
description: default is a valid identifier name (MethodDefinition)
esid: prod-PropertyDefinition
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinitionList , PropertyDefinition
PropertyDefinition:
MethodDefinition
...
MethodDefinition:
PropertyName ( UniqueFormalParameters ){ FunctionBody }
PropertyName:
LiteralPropertyName
...
LiteralPropertyName:
IdentifierName
...
Reserved Words
A reserved word is an IdentifierName that cannot be used as an Identifier.
--- |
981 |
ident-name-method-def-delete-escaped.js |
---
description: delete is a valid identifier name, using escape (MethodDefinition)
esid: prod-PropertyDefinition
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinitionList , PropertyDefinition
PropertyDefinition:
MethodDefinition
...
MethodDefinition:
PropertyName ( UniqueFormalParameters ){ FunctionBody }
PropertyName:
LiteralPropertyName
...
LiteralPropertyName:
IdentifierName
...
Reserved Words
A reserved word is an IdentifierName that cannot be used as an Identifier.
--- |
1004 |
ident-name-method-def-do-escaped.js |
---
description: do is a valid identifier name, using escape (MethodDefinition)
esid: prod-PropertyDefinition
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinitionList , PropertyDefinition
PropertyDefinition:
MethodDefinition
...
MethodDefinition:
PropertyName ( UniqueFormalParameters ){ FunctionBody }
PropertyName:
LiteralPropertyName
...
LiteralPropertyName:
IdentifierName
...
Reserved Words
A reserved word is an IdentifierName that cannot be used as an Identifier.
--- |
988 |
ident-name-method-def-else-escaped.js |
---
description: else is a valid identifier name, using escape (MethodDefinition)
esid: prod-PropertyDefinition
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinitionList , PropertyDefinition
PropertyDefinition:
MethodDefinition
...
MethodDefinition:
PropertyName ( UniqueFormalParameters ){ FunctionBody }
PropertyName:
LiteralPropertyName
...
LiteralPropertyName:
IdentifierName
...
Reserved Words
A reserved word is an IdentifierName that cannot be used as an Identifier.
--- |
996 |
ident-name-method-def-enum-escaped.js |
---
description: enum is a valid identifier name, using escape (MethodDefinition)
esid: prod-PropertyDefinition
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinitionList , PropertyDefinition
PropertyDefinition:
MethodDefinition
...
MethodDefinition:
PropertyName ( UniqueFormalParameters ){ FunctionBody }
PropertyName:
LiteralPropertyName
...
LiteralPropertyName:
IdentifierName
...
Reserved Words
A reserved word is an IdentifierName that cannot be used as an Identifier.
--- |
996 |
ident-name-method-def-export-escaped.js |
---
description: export is a valid identifier name, using escape (MethodDefinition)
esid: prod-PropertyDefinition
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinitionList , PropertyDefinition
PropertyDefinition:
MethodDefinition
...
MethodDefinition:
PropertyName ( UniqueFormalParameters ){ FunctionBody }
PropertyName:
LiteralPropertyName
...
LiteralPropertyName:
IdentifierName
...
Reserved Words
A reserved word is an IdentifierName that cannot be used as an Identifier.
--- |
1004 |
ident-name-method-def-extends-escaped-ext.js |
---
description: extends is a valid identifier name, using extended escape (MethodDefinition)
esid: prod-PropertyDefinition
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinitionList , PropertyDefinition
PropertyDefinition:
MethodDefinition
...
MethodDefinition:
PropertyName ( UniqueFormalParameters ){ FunctionBody }
PropertyName:
LiteralPropertyName
...
LiteralPropertyName:
IdentifierName
...
Reserved Words
A reserved word is an IdentifierName that cannot be used as an Identifier.
--- |
1021 |
ident-name-method-def-extends-escaped.js |
---
description: extends is a valid identifier name, using escape (MethodDefinition)
esid: prod-PropertyDefinition
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinitionList , PropertyDefinition
PropertyDefinition:
MethodDefinition
...
MethodDefinition:
PropertyName ( UniqueFormalParameters ){ FunctionBody }
PropertyName:
LiteralPropertyName
...
LiteralPropertyName:
IdentifierName
...
Reserved Words
A reserved word is an IdentifierName that cannot be used as an Identifier.
--- |
1008 |
ident-name-method-def-extends.js |
---
description: extends is a valid identifier name (MethodDefinition)
esid: prod-PropertyDefinition
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinitionList , PropertyDefinition
PropertyDefinition:
MethodDefinition
...
MethodDefinition:
PropertyName ( UniqueFormalParameters ){ FunctionBody }
PropertyName:
LiteralPropertyName
...
LiteralPropertyName:
IdentifierName
...
Reserved Words
A reserved word is an IdentifierName that cannot be used as an Identifier.
--- |
981 |
ident-name-method-def-finally-escaped.js |
---
description: finally is a valid identifier name, using escape (MethodDefinition)
esid: prod-PropertyDefinition
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinitionList , PropertyDefinition
PropertyDefinition:
MethodDefinition
...
MethodDefinition:
PropertyName ( UniqueFormalParameters ){ FunctionBody }
PropertyName:
LiteralPropertyName
...
LiteralPropertyName:
IdentifierName
...
Reserved Words
A reserved word is an IdentifierName that cannot be used as an Identifier.
--- |
1008 |
ident-name-method-def-for-escaped.js |
---
description: for is a valid identifier name, using escape (MethodDefinition)
esid: prod-PropertyDefinition
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinitionList , PropertyDefinition
PropertyDefinition:
MethodDefinition
...
MethodDefinition:
PropertyName ( UniqueFormalParameters ){ FunctionBody }
PropertyName:
LiteralPropertyName
...
LiteralPropertyName:
IdentifierName
...
Reserved Words
A reserved word is an IdentifierName that cannot be used as an Identifier.
--- |
992 |
ident-name-method-def-function-escaped.js |
---
description: function is a valid identifier name, using escape (MethodDefinition)
esid: prod-PropertyDefinition
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinitionList , PropertyDefinition
PropertyDefinition:
MethodDefinition
...
MethodDefinition:
PropertyName ( UniqueFormalParameters ){ FunctionBody }
PropertyName:
LiteralPropertyName
...
LiteralPropertyName:
IdentifierName
...
Reserved Words
A reserved word is an IdentifierName that cannot be used as an Identifier.
--- |
1012 |
ident-name-method-def-if-escaped.js |
---
description: if is a valid identifier name, using escape (MethodDefinition)
esid: prod-PropertyDefinition
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinitionList , PropertyDefinition
PropertyDefinition:
MethodDefinition
...
MethodDefinition:
PropertyName ( UniqueFormalParameters ){ FunctionBody }
PropertyName:
LiteralPropertyName
...
LiteralPropertyName:
IdentifierName
...
Reserved Words
A reserved word is an IdentifierName that cannot be used as an Identifier.
--- |
988 |
ident-name-method-def-implements-escaped.js |
---
description: implements is a valid identifier name, using escape (MethodDefinition)
esid: prod-PropertyDefinition
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinitionList , PropertyDefinition
PropertyDefinition:
MethodDefinition
...
MethodDefinition:
PropertyName ( UniqueFormalParameters ){ FunctionBody }
PropertyName:
LiteralPropertyName
...
LiteralPropertyName:
IdentifierName
...
Reserved Words
A reserved word is an IdentifierName that cannot be used as an Identifier.
--- |
1034 |
ident-name-method-def-import-escaped.js |
---
description: import is a valid identifier name, using escape (MethodDefinition)
esid: prod-PropertyDefinition
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinitionList , PropertyDefinition
PropertyDefinition:
MethodDefinition
...
MethodDefinition:
PropertyName ( UniqueFormalParameters ){ FunctionBody }
PropertyName:
LiteralPropertyName
...
LiteralPropertyName:
IdentifierName
...
Reserved Words
A reserved word is an IdentifierName that cannot be used as an Identifier.
--- |
1004 |
ident-name-method-def-in-escaped.js |
---
description: in is a valid identifier name, using escape (MethodDefinition)
esid: prod-PropertyDefinition
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinitionList , PropertyDefinition
PropertyDefinition:
MethodDefinition
...
MethodDefinition:
PropertyName ( UniqueFormalParameters ){ FunctionBody }
PropertyName:
LiteralPropertyName
...
LiteralPropertyName:
IdentifierName
...
Reserved Words
A reserved word is an IdentifierName that cannot be used as an Identifier.
--- |
988 |
ident-name-method-def-instanceof-escaped.js |
---
description: instanceof is a valid identifier name, using escape (MethodDefinition)
esid: prod-PropertyDefinition
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinitionList , PropertyDefinition
PropertyDefinition:
MethodDefinition
...
MethodDefinition:
PropertyName ( UniqueFormalParameters ){ FunctionBody }
PropertyName:
LiteralPropertyName
...
LiteralPropertyName:
IdentifierName
...
Reserved Words
A reserved word is an IdentifierName that cannot be used as an Identifier.
--- |
1020 |
ident-name-method-def-interface-escaped.js |
---
description: interface is a valid identifier name, using escape (MethodDefinition)
esid: prod-PropertyDefinition
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinitionList , PropertyDefinition
PropertyDefinition:
MethodDefinition
...
MethodDefinition:
PropertyName ( UniqueFormalParameters ){ FunctionBody }
PropertyName:
LiteralPropertyName
...
LiteralPropertyName:
IdentifierName
...
Reserved Words
A reserved word is an IdentifierName that cannot be used as an Identifier.
--- |
1030 |
ident-name-method-def-let-escaped.js |
---
description: let is a valid identifier name, using escape (MethodDefinition)
esid: prod-PropertyDefinition
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinitionList , PropertyDefinition
PropertyDefinition:
MethodDefinition
...
MethodDefinition:
PropertyName ( UniqueFormalParameters ){ FunctionBody }
PropertyName:
LiteralPropertyName
...
LiteralPropertyName:
IdentifierName
...
Reserved Words
A reserved word is an IdentifierName that cannot be used as an Identifier.
--- |
1006 |
ident-name-method-def-new-escaped.js |
---
description: new is a valid identifier name, using escape (MethodDefinition)
esid: prod-PropertyDefinition
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinitionList , PropertyDefinition
PropertyDefinition:
MethodDefinition
...
MethodDefinition:
PropertyName ( UniqueFormalParameters ){ FunctionBody }
PropertyName:
LiteralPropertyName
...
LiteralPropertyName:
IdentifierName
...
Reserved Words
A reserved word is an IdentifierName that cannot be used as an Identifier.
--- |
992 |
ident-name-method-def-package-escaped.js |
---
description: package is a valid identifier name, using escape (MethodDefinition)
esid: prod-PropertyDefinition
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinitionList , PropertyDefinition
PropertyDefinition:
MethodDefinition
...
MethodDefinition:
PropertyName ( UniqueFormalParameters ){ FunctionBody }
PropertyName:
LiteralPropertyName
...
LiteralPropertyName:
IdentifierName
...
Reserved Words
A reserved word is an IdentifierName that cannot be used as an Identifier.
--- |
1022 |
ident-name-method-def-private-escaped.js |
---
description: private is a valid identifier name, using escape (MethodDefinition)
esid: prod-PropertyDefinition
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinitionList , PropertyDefinition
PropertyDefinition:
MethodDefinition
...
MethodDefinition:
PropertyName ( UniqueFormalParameters ){ FunctionBody }
PropertyName:
LiteralPropertyName
...
LiteralPropertyName:
IdentifierName
...
Reserved Words
A reserved word is an IdentifierName that cannot be used as an Identifier.
--- |
1022 |
ident-name-method-def-protected-escaped.js |
---
description: protected is a valid identifier name, using escape (MethodDefinition)
esid: prod-PropertyDefinition
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinitionList , PropertyDefinition
PropertyDefinition:
MethodDefinition
...
MethodDefinition:
PropertyName ( UniqueFormalParameters ){ FunctionBody }
PropertyName:
LiteralPropertyName
...
LiteralPropertyName:
IdentifierName
...
Reserved Words
A reserved word is an IdentifierName that cannot be used as an Identifier.
--- |
1030 |
ident-name-method-def-public-escaped.js |
---
description: public is a valid identifier name, using escape (MethodDefinition)
esid: prod-PropertyDefinition
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinitionList , PropertyDefinition
PropertyDefinition:
MethodDefinition
...
MethodDefinition:
PropertyName ( UniqueFormalParameters ){ FunctionBody }
PropertyName:
LiteralPropertyName
...
LiteralPropertyName:
IdentifierName
...
Reserved Words
A reserved word is an IdentifierName that cannot be used as an Identifier.
--- |
1018 |
ident-name-method-def-return-escaped.js |
---
description: return is a valid identifier name, using escape (MethodDefinition)
esid: prod-PropertyDefinition
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinitionList , PropertyDefinition
PropertyDefinition:
MethodDefinition
...
MethodDefinition:
PropertyName ( UniqueFormalParameters ){ FunctionBody }
PropertyName:
LiteralPropertyName
...
LiteralPropertyName:
IdentifierName
...
Reserved Words
A reserved word is an IdentifierName that cannot be used as an Identifier.
--- |
1004 |
ident-name-method-def-static-escaped.js |
---
description: static is a valid identifier name, using escape (MethodDefinition)
esid: prod-PropertyDefinition
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinitionList , PropertyDefinition
PropertyDefinition:
MethodDefinition
...
MethodDefinition:
PropertyName ( UniqueFormalParameters ){ FunctionBody }
PropertyName:
LiteralPropertyName
...
LiteralPropertyName:
IdentifierName
...
Reserved Words
A reserved word is an IdentifierName that cannot be used as an Identifier.
--- |
1018 |
ident-name-method-def-super-escaped.js |
---
description: super is a valid identifier name, using escape (MethodDefinition)
esid: prod-PropertyDefinition
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinitionList , PropertyDefinition
PropertyDefinition:
MethodDefinition
...
MethodDefinition:
PropertyName ( UniqueFormalParameters ){ FunctionBody }
PropertyName:
LiteralPropertyName
...
LiteralPropertyName:
IdentifierName
...
Reserved Words
A reserved word is an IdentifierName that cannot be used as an Identifier.
--- |
1000 |
ident-name-method-def-switch-escaped.js |
---
description: switch is a valid identifier name, using escape (MethodDefinition)
esid: prod-PropertyDefinition
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinitionList , PropertyDefinition
PropertyDefinition:
MethodDefinition
...
MethodDefinition:
PropertyName ( UniqueFormalParameters ){ FunctionBody }
PropertyName:
LiteralPropertyName
...
LiteralPropertyName:
IdentifierName
...
Reserved Words
A reserved word is an IdentifierName that cannot be used as an Identifier.
--- |
1004 |
ident-name-method-def-this-escaped.js |
---
description: this is a valid identifier name, using escape (MethodDefinition)
esid: prod-PropertyDefinition
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinitionList , PropertyDefinition
PropertyDefinition:
MethodDefinition
...
MethodDefinition:
PropertyName ( UniqueFormalParameters ){ FunctionBody }
PropertyName:
LiteralPropertyName
...
LiteralPropertyName:
IdentifierName
...
Reserved Words
A reserved word is an IdentifierName that cannot be used as an Identifier.
--- |
996 |
ident-name-method-def-throw-escaped.js |
---
description: throw is a valid identifier name, using escape (MethodDefinition)
esid: prod-PropertyDefinition
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinitionList , PropertyDefinition
PropertyDefinition:
MethodDefinition
...
MethodDefinition:
PropertyName ( UniqueFormalParameters ){ FunctionBody }
PropertyName:
LiteralPropertyName
...
LiteralPropertyName:
IdentifierName
...
Reserved Words
A reserved word is an IdentifierName that cannot be used as an Identifier.
--- |
1000 |
ident-name-method-def-try-escaped.js |
---
description: try is a valid identifier name, using escape (MethodDefinition)
esid: prod-PropertyDefinition
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinitionList , PropertyDefinition
PropertyDefinition:
MethodDefinition
...
MethodDefinition:
PropertyName ( UniqueFormalParameters ){ FunctionBody }
PropertyName:
LiteralPropertyName
...
LiteralPropertyName:
IdentifierName
...
Reserved Words
A reserved word is an IdentifierName that cannot be used as an Identifier.
--- |
992 |
ident-name-method-def-typeof-escaped.js |
---
description: typeof is a valid identifier name, using escape (MethodDefinition)
esid: prod-PropertyDefinition
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinitionList , PropertyDefinition
PropertyDefinition:
MethodDefinition
...
MethodDefinition:
PropertyName ( UniqueFormalParameters ){ FunctionBody }
PropertyName:
LiteralPropertyName
...
LiteralPropertyName:
IdentifierName
...
Reserved Words
A reserved word is an IdentifierName that cannot be used as an Identifier.
--- |
1004 |
ident-name-method-def-var-escaped.js |
---
description: var is a valid identifier name, using escape (MethodDefinition)
esid: prod-PropertyDefinition
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinitionList , PropertyDefinition
PropertyDefinition:
MethodDefinition
...
MethodDefinition:
PropertyName ( UniqueFormalParameters ){ FunctionBody }
PropertyName:
LiteralPropertyName
...
LiteralPropertyName:
IdentifierName
...
Reserved Words
A reserved word is an IdentifierName that cannot be used as an Identifier.
--- |
992 |
ident-name-method-def-void-escaped.js |
---
description: void is a valid identifier name, using escape (MethodDefinition)
esid: prod-PropertyDefinition
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinitionList , PropertyDefinition
PropertyDefinition:
MethodDefinition
...
MethodDefinition:
PropertyName ( UniqueFormalParameters ){ FunctionBody }
PropertyName:
LiteralPropertyName
...
LiteralPropertyName:
IdentifierName
...
Reserved Words
A reserved word is an IdentifierName that cannot be used as an Identifier.
--- |
996 |
ident-name-method-def-while-escaped.js |
---
description: while is a valid identifier name, using escape (MethodDefinition)
esid: prod-PropertyDefinition
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinitionList , PropertyDefinition
PropertyDefinition:
MethodDefinition
...
MethodDefinition:
PropertyName ( UniqueFormalParameters ){ FunctionBody }
PropertyName:
LiteralPropertyName
...
LiteralPropertyName:
IdentifierName
...
Reserved Words
A reserved word is an IdentifierName that cannot be used as an Identifier.
--- |
1000 |
ident-name-method-def-with-escaped.js |
---
description: with is a valid identifier name, using escape (MethodDefinition)
esid: prod-PropertyDefinition
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinitionList , PropertyDefinition
PropertyDefinition:
MethodDefinition
...
MethodDefinition:
PropertyName ( UniqueFormalParameters ){ FunctionBody }
PropertyName:
LiteralPropertyName
...
LiteralPropertyName:
IdentifierName
...
Reserved Words
A reserved word is an IdentifierName that cannot be used as an Identifier.
--- |
996 |
ident-name-prop-name-literal-await-static-init.js |
---
esid: sec-class-definitions-static-semantics-early-errors
description: The restriction on `await` does not apply to IdentifierName
info: |
BindingIdentifier : Identifier
[...]
- It is a Syntax Error if the code matched by this production is nested,
directly or indirectly (but not crossing function or static initialization
block boundaries), within a ClassStaticBlock and the StringValue of
Identifier is "await".
features: [class-static-block]
--- |
686 |
ident-name-prop-name-literal-break-escaped.js |
---
description: break is a valid identifier name, using escape (PropertyName)
esid: prod-PropertyDefinition
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinitionList , PropertyDefinition
PropertyDefinition:
IdentifierReference
PropertyName : AssignmentExpression
MethodDefinition
... AssignmentExpression
...
PropertyName:
LiteralPropertyName
...
LiteralPropertyName:
IdentifierName
...
Reserved Words
A reserved word is an IdentifierName that cannot be used as an Identifier.
--- |
986 |
ident-name-prop-name-literal-case-escaped.js |
---
description: case is a valid identifier name, using escape (PropertyName)
esid: prod-PropertyDefinition
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinitionList , PropertyDefinition
PropertyDefinition:
IdentifierReference
PropertyName : AssignmentExpression
MethodDefinition
... AssignmentExpression
...
PropertyName:
LiteralPropertyName
...
LiteralPropertyName:
IdentifierName
...
Reserved Words
A reserved word is an IdentifierName that cannot be used as an Identifier.
--- |
982 |
ident-name-prop-name-literal-catch-escaped.js |
---
description: catch is a valid identifier name, using escape (PropertyName)
esid: prod-PropertyDefinition
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinitionList , PropertyDefinition
PropertyDefinition:
IdentifierReference
PropertyName : AssignmentExpression
MethodDefinition
... AssignmentExpression
...
PropertyName:
LiteralPropertyName
...
LiteralPropertyName:
IdentifierName
...
Reserved Words
A reserved word is an IdentifierName that cannot be used as an Identifier.
--- |
986 |
ident-name-prop-name-literal-class-escaped.js |
---
description: class is a valid identifier name, using escape (PropertyName)
esid: prod-PropertyDefinition
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinitionList , PropertyDefinition
PropertyDefinition:
IdentifierReference
PropertyName : AssignmentExpression
MethodDefinition
... AssignmentExpression
...
PropertyName:
LiteralPropertyName
...
LiteralPropertyName:
IdentifierName
...
Reserved Words
A reserved word is an IdentifierName that cannot be used as an Identifier.
--- |
986 |
ident-name-prop-name-literal-const-escaped.js |
---
description: const is a valid identifier name, using escape (PropertyName)
esid: prod-PropertyDefinition
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinitionList , PropertyDefinition
PropertyDefinition:
IdentifierReference
PropertyName : AssignmentExpression
MethodDefinition
... AssignmentExpression
...
PropertyName:
LiteralPropertyName
...
LiteralPropertyName:
IdentifierName
...
Reserved Words
A reserved word is an IdentifierName that cannot be used as an Identifier.
--- |
986 |
ident-name-prop-name-literal-continue-escaped.js |
---
description: continue is a valid identifier name, using escape (PropertyName)
esid: prod-PropertyDefinition
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinitionList , PropertyDefinition
PropertyDefinition:
IdentifierReference
PropertyName : AssignmentExpression
MethodDefinition
... AssignmentExpression
...
PropertyName:
LiteralPropertyName
...
LiteralPropertyName:
IdentifierName
...
Reserved Words
A reserved word is an IdentifierName that cannot be used as an Identifier.
--- |
998 |
ident-name-prop-name-literal-debugger-escaped.js |
---
description: debugger is a valid identifier name, using escape (PropertyName)
esid: prod-PropertyDefinition
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinitionList , PropertyDefinition
PropertyDefinition:
IdentifierReference
PropertyName : AssignmentExpression
MethodDefinition
... AssignmentExpression
...
PropertyName:
LiteralPropertyName
...
LiteralPropertyName:
IdentifierName
...
Reserved Words
A reserved word is an IdentifierName that cannot be used as an Identifier.
--- |
998 |
ident-name-prop-name-literal-default-escaped-ext.js |
---
description: default is a valid identifier name, using extended escape (PropertyName)
esid: prod-PropertyDefinition
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinitionList , PropertyDefinition
PropertyDefinition:
IdentifierReference
PropertyName : AssignmentExpression
MethodDefinition
... AssignmentExpression
...
PropertyName:
LiteralPropertyName
...
LiteralPropertyName:
IdentifierName
...
Reserved Words
A reserved word is an IdentifierName that cannot be used as an Identifier.
--- |
1007 |
ident-name-prop-name-literal-default-escaped.js |
---
description: default is a valid identifier name, using escape (PropertyName)
esid: prod-PropertyDefinition
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinitionList , PropertyDefinition
PropertyDefinition:
IdentifierReference
PropertyName : AssignmentExpression
MethodDefinition
... AssignmentExpression
...
PropertyName:
LiteralPropertyName
...
LiteralPropertyName:
IdentifierName
...
Reserved Words
A reserved word is an IdentifierName that cannot be used as an Identifier.
--- |
994 |
ident-name-prop-name-literal-default.js |
---
description: default is a valid identifier name (PropertyName)
esid: prod-PropertyDefinition
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinitionList , PropertyDefinition
PropertyDefinition:
IdentifierReference
PropertyName : AssignmentExpression
MethodDefinition
... AssignmentExpression
...
PropertyName:
LiteralPropertyName
...
LiteralPropertyName:
IdentifierName
...
Reserved Words
A reserved word is an IdentifierName that cannot be used as an Identifier.
--- |
967 |
ident-name-prop-name-literal-delete-escaped.js |
---
description: delete is a valid identifier name, using escape (PropertyName)
esid: prod-PropertyDefinition
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinitionList , PropertyDefinition
PropertyDefinition:
IdentifierReference
PropertyName : AssignmentExpression
MethodDefinition
... AssignmentExpression
...
PropertyName:
LiteralPropertyName
...
LiteralPropertyName:
IdentifierName
...
Reserved Words
A reserved word is an IdentifierName that cannot be used as an Identifier.
--- |
990 |
ident-name-prop-name-literal-do-escaped.js |
---
description: do is a valid identifier name, using escape (PropertyName)
esid: prod-PropertyDefinition
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinitionList , PropertyDefinition
PropertyDefinition:
IdentifierReference
PropertyName : AssignmentExpression
MethodDefinition
... AssignmentExpression
...
PropertyName:
LiteralPropertyName
...
LiteralPropertyName:
IdentifierName
...
Reserved Words
A reserved word is an IdentifierName that cannot be used as an Identifier.
--- |
974 |
ident-name-prop-name-literal-else-escaped.js |
---
description: else is a valid identifier name, using escape (PropertyName)
esid: prod-PropertyDefinition
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinitionList , PropertyDefinition
PropertyDefinition:
IdentifierReference
PropertyName : AssignmentExpression
MethodDefinition
... AssignmentExpression
...
PropertyName:
LiteralPropertyName
...
LiteralPropertyName:
IdentifierName
...
Reserved Words
A reserved word is an IdentifierName that cannot be used as an Identifier.
--- |
982 |
ident-name-prop-name-literal-enum-escaped.js |
---
description: enum is a valid identifier name, using escape (PropertyName)
esid: prod-PropertyDefinition
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinitionList , PropertyDefinition
PropertyDefinition:
IdentifierReference
PropertyName : AssignmentExpression
MethodDefinition
... AssignmentExpression
...
PropertyName:
LiteralPropertyName
...
LiteralPropertyName:
IdentifierName
...
Reserved Words
A reserved word is an IdentifierName that cannot be used as an Identifier.
--- |
982 |
ident-name-prop-name-literal-export-escaped.js |
---
description: export is a valid identifier name, using escape (PropertyName)
esid: prod-PropertyDefinition
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinitionList , PropertyDefinition
PropertyDefinition:
IdentifierReference
PropertyName : AssignmentExpression
MethodDefinition
... AssignmentExpression
...
PropertyName:
LiteralPropertyName
...
LiteralPropertyName:
IdentifierName
...
Reserved Words
A reserved word is an IdentifierName that cannot be used as an Identifier.
--- |
990 |
ident-name-prop-name-literal-extends-escaped-ext.js |
---
description: extends is a valid identifier name, using extended escape (PropertyName)
esid: prod-PropertyDefinition
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinitionList , PropertyDefinition
PropertyDefinition:
IdentifierReference
PropertyName : AssignmentExpression
MethodDefinition
... AssignmentExpression
...
PropertyName:
LiteralPropertyName
...
LiteralPropertyName:
IdentifierName
...
Reserved Words
A reserved word is an IdentifierName that cannot be used as an Identifier.
--- |
1007 |
ident-name-prop-name-literal-extends-escaped.js |
---
description: extends is a valid identifier name, using escape (PropertyName)
esid: prod-PropertyDefinition
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinitionList , PropertyDefinition
PropertyDefinition:
IdentifierReference
PropertyName : AssignmentExpression
MethodDefinition
... AssignmentExpression
...
PropertyName:
LiteralPropertyName
...
LiteralPropertyName:
IdentifierName
...
Reserved Words
A reserved word is an IdentifierName that cannot be used as an Identifier.
--- |
994 |
ident-name-prop-name-literal-extends.js |
---
description: extends is a valid identifier name (PropertyName)
esid: prod-PropertyDefinition
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinitionList , PropertyDefinition
PropertyDefinition:
IdentifierReference
PropertyName : AssignmentExpression
MethodDefinition
... AssignmentExpression
...
PropertyName:
LiteralPropertyName
...
LiteralPropertyName:
IdentifierName
...
Reserved Words
A reserved word is an IdentifierName that cannot be used as an Identifier.
--- |
967 |
ident-name-prop-name-literal-finally-escaped.js |
---
description: finally is a valid identifier name, using escape (PropertyName)
esid: prod-PropertyDefinition
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinitionList , PropertyDefinition
PropertyDefinition:
IdentifierReference
PropertyName : AssignmentExpression
MethodDefinition
... AssignmentExpression
...
PropertyName:
LiteralPropertyName
...
LiteralPropertyName:
IdentifierName
...
Reserved Words
A reserved word is an IdentifierName that cannot be used as an Identifier.
--- |
994 |
ident-name-prop-name-literal-for-escaped.js |
---
description: for is a valid identifier name, using escape (PropertyName)
esid: prod-PropertyDefinition
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinitionList , PropertyDefinition
PropertyDefinition:
IdentifierReference
PropertyName : AssignmentExpression
MethodDefinition
... AssignmentExpression
...
PropertyName:
LiteralPropertyName
...
LiteralPropertyName:
IdentifierName
...
Reserved Words
A reserved word is an IdentifierName that cannot be used as an Identifier.
--- |
978 |
ident-name-prop-name-literal-function-escaped.js |
---
description: function is a valid identifier name, using escape (PropertyName)
esid: prod-PropertyDefinition
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinitionList , PropertyDefinition
PropertyDefinition:
IdentifierReference
PropertyName : AssignmentExpression
MethodDefinition
... AssignmentExpression
...
PropertyName:
LiteralPropertyName
...
LiteralPropertyName:
IdentifierName
...
Reserved Words
A reserved word is an IdentifierName that cannot be used as an Identifier.
--- |
998 |
ident-name-prop-name-literal-if-escaped.js |
---
description: if is a valid identifier name, using escape (PropertyName)
esid: prod-PropertyDefinition
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinitionList , PropertyDefinition
PropertyDefinition:
IdentifierReference
PropertyName : AssignmentExpression
MethodDefinition
... AssignmentExpression
...
PropertyName:
LiteralPropertyName
...
LiteralPropertyName:
IdentifierName
...
Reserved Words
A reserved word is an IdentifierName that cannot be used as an Identifier.
--- |
974 |
ident-name-prop-name-literal-implements-escaped.js |
---
description: implements is a valid identifier name, using escape (PropertyName)
esid: prod-PropertyDefinition
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinitionList , PropertyDefinition
PropertyDefinition:
IdentifierReference
PropertyName : AssignmentExpression
MethodDefinition
... AssignmentExpression
...
PropertyName:
LiteralPropertyName
...
LiteralPropertyName:
IdentifierName
...
Reserved Words
A reserved word is an IdentifierName that cannot be used as an Identifier.
--- |
1020 |
ident-name-prop-name-literal-import-escaped.js |
---
description: import is a valid identifier name, using escape (PropertyName)
esid: prod-PropertyDefinition
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinitionList , PropertyDefinition
PropertyDefinition:
IdentifierReference
PropertyName : AssignmentExpression
MethodDefinition
... AssignmentExpression
...
PropertyName:
LiteralPropertyName
...
LiteralPropertyName:
IdentifierName
...
Reserved Words
A reserved word is an IdentifierName that cannot be used as an Identifier.
--- |
990 |
ident-name-prop-name-literal-in-escaped.js |
---
description: in is a valid identifier name, using escape (PropertyName)
esid: prod-PropertyDefinition
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinitionList , PropertyDefinition
PropertyDefinition:
IdentifierReference
PropertyName : AssignmentExpression
MethodDefinition
... AssignmentExpression
...
PropertyName:
LiteralPropertyName
...
LiteralPropertyName:
IdentifierName
...
Reserved Words
A reserved word is an IdentifierName that cannot be used as an Identifier.
--- |
974 |
ident-name-prop-name-literal-instanceof-escaped.js |
---
description: instanceof is a valid identifier name, using escape (PropertyName)
esid: prod-PropertyDefinition
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinitionList , PropertyDefinition
PropertyDefinition:
IdentifierReference
PropertyName : AssignmentExpression
MethodDefinition
... AssignmentExpression
...
PropertyName:
LiteralPropertyName
...
LiteralPropertyName:
IdentifierName
...
Reserved Words
A reserved word is an IdentifierName that cannot be used as an Identifier.
--- |
1006 |
ident-name-prop-name-literal-interface-escaped.js |
---
description: interface is a valid identifier name, using escape (PropertyName)
esid: prod-PropertyDefinition
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinitionList , PropertyDefinition
PropertyDefinition:
IdentifierReference
PropertyName : AssignmentExpression
MethodDefinition
... AssignmentExpression
...
PropertyName:
LiteralPropertyName
...
LiteralPropertyName:
IdentifierName
...
Reserved Words
A reserved word is an IdentifierName that cannot be used as an Identifier.
--- |
1016 |
ident-name-prop-name-literal-let-escaped.js |
---
description: let is a valid identifier name, using escape (PropertyName)
esid: prod-PropertyDefinition
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinitionList , PropertyDefinition
PropertyDefinition:
IdentifierReference
PropertyName : AssignmentExpression
MethodDefinition
... AssignmentExpression
...
PropertyName:
LiteralPropertyName
...
LiteralPropertyName:
IdentifierName
...
Reserved Words
A reserved word is an IdentifierName that cannot be used as an Identifier.
--- |
992 |
ident-name-prop-name-literal-new-escaped.js |
---
description: new is a valid identifier name, using escape (PropertyName)
esid: prod-PropertyDefinition
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinitionList , PropertyDefinition
PropertyDefinition:
IdentifierReference
PropertyName : AssignmentExpression
MethodDefinition
... AssignmentExpression
...
PropertyName:
LiteralPropertyName
...
LiteralPropertyName:
IdentifierName
...
Reserved Words
A reserved word is an IdentifierName that cannot be used as an Identifier.
--- |
978 |
ident-name-prop-name-literal-package-escaped.js |
---
description: package is a valid identifier name, using escape (PropertyName)
esid: prod-PropertyDefinition
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinitionList , PropertyDefinition
PropertyDefinition:
IdentifierReference
PropertyName : AssignmentExpression
MethodDefinition
... AssignmentExpression
...
PropertyName:
LiteralPropertyName
...
LiteralPropertyName:
IdentifierName
...
Reserved Words
A reserved word is an IdentifierName that cannot be used as an Identifier.
--- |
1008 |
ident-name-prop-name-literal-private-escaped.js |
---
description: private is a valid identifier name, using escape (PropertyName)
esid: prod-PropertyDefinition
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinitionList , PropertyDefinition
PropertyDefinition:
IdentifierReference
PropertyName : AssignmentExpression
MethodDefinition
... AssignmentExpression
...
PropertyName:
LiteralPropertyName
...
LiteralPropertyName:
IdentifierName
...
Reserved Words
A reserved word is an IdentifierName that cannot be used as an Identifier.
--- |
1008 |
ident-name-prop-name-literal-protected-escaped.js |
---
description: protected is a valid identifier name, using escape (PropertyName)
esid: prod-PropertyDefinition
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinitionList , PropertyDefinition
PropertyDefinition:
IdentifierReference
PropertyName : AssignmentExpression
MethodDefinition
... AssignmentExpression
...
PropertyName:
LiteralPropertyName
...
LiteralPropertyName:
IdentifierName
...
Reserved Words
A reserved word is an IdentifierName that cannot be used as an Identifier.
--- |
1016 |
ident-name-prop-name-literal-public-escaped.js |
---
description: public is a valid identifier name, using escape (PropertyName)
esid: prod-PropertyDefinition
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinitionList , PropertyDefinition
PropertyDefinition:
IdentifierReference
PropertyName : AssignmentExpression
MethodDefinition
... AssignmentExpression
...
PropertyName:
LiteralPropertyName
...
LiteralPropertyName:
IdentifierName
...
Reserved Words
A reserved word is an IdentifierName that cannot be used as an Identifier.
--- |
1004 |
ident-name-prop-name-literal-return-escaped.js |
---
description: return is a valid identifier name, using escape (PropertyName)
esid: prod-PropertyDefinition
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinitionList , PropertyDefinition
PropertyDefinition:
IdentifierReference
PropertyName : AssignmentExpression
MethodDefinition
... AssignmentExpression
...
PropertyName:
LiteralPropertyName
...
LiteralPropertyName:
IdentifierName
...
Reserved Words
A reserved word is an IdentifierName that cannot be used as an Identifier.
--- |
990 |
ident-name-prop-name-literal-static-escaped.js |
---
description: static is a valid identifier name, using escape (PropertyName)
esid: prod-PropertyDefinition
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinitionList , PropertyDefinition
PropertyDefinition:
IdentifierReference
PropertyName : AssignmentExpression
MethodDefinition
... AssignmentExpression
...
PropertyName:
LiteralPropertyName
...
LiteralPropertyName:
IdentifierName
...
Reserved Words
A reserved word is an IdentifierName that cannot be used as an Identifier.
--- |
1004 |
ident-name-prop-name-literal-super-escaped.js |
---
description: super is a valid identifier name, using escape (PropertyName)
esid: prod-PropertyDefinition
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinitionList , PropertyDefinition
PropertyDefinition:
IdentifierReference
PropertyName : AssignmentExpression
MethodDefinition
... AssignmentExpression
...
PropertyName:
LiteralPropertyName
...
LiteralPropertyName:
IdentifierName
...
Reserved Words
A reserved word is an IdentifierName that cannot be used as an Identifier.
--- |
986 |
ident-name-prop-name-literal-switch-escaped.js |
---
description: switch is a valid identifier name, using escape (PropertyName)
esid: prod-PropertyDefinition
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinitionList , PropertyDefinition
PropertyDefinition:
IdentifierReference
PropertyName : AssignmentExpression
MethodDefinition
... AssignmentExpression
...
PropertyName:
LiteralPropertyName
...
LiteralPropertyName:
IdentifierName
...
Reserved Words
A reserved word is an IdentifierName that cannot be used as an Identifier.
--- |
990 |
ident-name-prop-name-literal-this-escaped.js |
---
description: this is a valid identifier name, using escape (PropertyName)
esid: prod-PropertyDefinition
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinitionList , PropertyDefinition
PropertyDefinition:
IdentifierReference
PropertyName : AssignmentExpression
MethodDefinition
... AssignmentExpression
...
PropertyName:
LiteralPropertyName
...
LiteralPropertyName:
IdentifierName
...
Reserved Words
A reserved word is an IdentifierName that cannot be used as an Identifier.
--- |
982 |
ident-name-prop-name-literal-throw-escaped.js |
---
description: throw is a valid identifier name, using escape (PropertyName)
esid: prod-PropertyDefinition
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinitionList , PropertyDefinition
PropertyDefinition:
IdentifierReference
PropertyName : AssignmentExpression
MethodDefinition
... AssignmentExpression
...
PropertyName:
LiteralPropertyName
...
LiteralPropertyName:
IdentifierName
...
Reserved Words
A reserved word is an IdentifierName that cannot be used as an Identifier.
--- |
986 |
ident-name-prop-name-literal-try-escaped.js |
---
description: try is a valid identifier name, using escape (PropertyName)
esid: prod-PropertyDefinition
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinitionList , PropertyDefinition
PropertyDefinition:
IdentifierReference
PropertyName : AssignmentExpression
MethodDefinition
... AssignmentExpression
...
PropertyName:
LiteralPropertyName
...
LiteralPropertyName:
IdentifierName
...
Reserved Words
A reserved word is an IdentifierName that cannot be used as an Identifier.
--- |
978 |
ident-name-prop-name-literal-typeof-escaped.js |
---
description: typeof is a valid identifier name, using escape (PropertyName)
esid: prod-PropertyDefinition
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinitionList , PropertyDefinition
PropertyDefinition:
IdentifierReference
PropertyName : AssignmentExpression
MethodDefinition
... AssignmentExpression
...
PropertyName:
LiteralPropertyName
...
LiteralPropertyName:
IdentifierName
...
Reserved Words
A reserved word is an IdentifierName that cannot be used as an Identifier.
--- |
990 |
ident-name-prop-name-literal-var-escaped.js |
---
description: var is a valid identifier name, using escape (PropertyName)
esid: prod-PropertyDefinition
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinitionList , PropertyDefinition
PropertyDefinition:
IdentifierReference
PropertyName : AssignmentExpression
MethodDefinition
... AssignmentExpression
...
PropertyName:
LiteralPropertyName
...
LiteralPropertyName:
IdentifierName
...
Reserved Words
A reserved word is an IdentifierName that cannot be used as an Identifier.
--- |
978 |
ident-name-prop-name-literal-void-escaped.js |
---
description: void is a valid identifier name, using escape (PropertyName)
esid: prod-PropertyDefinition
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinitionList , PropertyDefinition
PropertyDefinition:
IdentifierReference
PropertyName : AssignmentExpression
MethodDefinition
... AssignmentExpression
...
PropertyName:
LiteralPropertyName
...
LiteralPropertyName:
IdentifierName
...
Reserved Words
A reserved word is an IdentifierName that cannot be used as an Identifier.
--- |
982 |
ident-name-prop-name-literal-while-escaped.js |
---
description: while is a valid identifier name, using escape (PropertyName)
esid: prod-PropertyDefinition
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinitionList , PropertyDefinition
PropertyDefinition:
IdentifierReference
PropertyName : AssignmentExpression
MethodDefinition
... AssignmentExpression
...
PropertyName:
LiteralPropertyName
...
LiteralPropertyName:
IdentifierName
...
Reserved Words
A reserved word is an IdentifierName that cannot be used as an Identifier.
--- |
986 |
ident-name-prop-name-literal-with-escaped.js |
---
description: with is a valid identifier name, using escape (PropertyName)
esid: prod-PropertyDefinition
flags: [generated]
info: |
ObjectLiteral :
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
PropertyDefinitionList:
PropertyDefinition
PropertyDefinitionList , PropertyDefinition
PropertyDefinition:
IdentifierReference
PropertyName : AssignmentExpression
MethodDefinition
... AssignmentExpression
...
PropertyName:
LiteralPropertyName
...
LiteralPropertyName:
IdentifierName
...
Reserved Words
A reserved word is an IdentifierName that cannot be used as an Identifier.
--- |
982 |
identifier-shorthand-await-strict-mode.js |
---
description: >
Object literal shorthands are limited to valid identifier references. await is valid in non-module strict mode code.
esid: sec-object-initializer
flags: [noStrict]
info: |
PropertyDefinition:
IdentifierReference
CoverInitializedName
PropertyName : AssignmentExpression
MethodDefinition
Identifier : IdentifierName but not ReservedWord
--- |
607 |
identifier-shorthand-implements-invalid-strict-mode.js |
---
description: >
Object literal shorthands are limited to valid identifier references. Future Reserved Words are disallowed in Strict Mode. (implements)
esid: sec-object-initializer
flags: [noStrict]
info: |
PropertyDefinition:
IdentifierReference
CoverInitializedName
PropertyName : AssignmentExpression
MethodDefinition
Identifier : IdentifierName but not ReservedWord
It is a Syntax Error if this phrase is contained in strict mode code and
the StringValue of IdentifierName is: "implements", "interface", "let",
"package", "private", "protected", "public", "static", or "yield".
negative:
phase: parse
type: SyntaxError
--- |
934 |
identifier-shorthand-interface-invalid-strict-mode.js |
---
description: >
Object literal shorthands are limited to valid identifier references. Future Reserved Words are disallowed in Strict Mode. (interface)
esid: sec-object-initializer
flags: [noStrict]
info: |
PropertyDefinition:
IdentifierReference
CoverInitializedName
PropertyName : AssignmentExpression
MethodDefinition
Identifier : IdentifierName but not ReservedWord
It is a Syntax Error if this phrase is contained in strict mode code and
the StringValue of IdentifierName is: "implements", "interface", "let",
"package", "private", "protected", "public", "static", or "yield".
negative:
phase: parse
type: SyntaxError
--- |
931 |
identifier-shorthand-invalid-computed-name.js |
---
description: >
Object literal shorthands are only valid with identifier references,
not computed property names.
esid: sec-object-initializer
info: |
PropertyDefinition:
IdentifierReference
CoverInitializedName
PropertyName : AssignmentExpression
MethodDefinition
PropertyName:
LiteralPropertyName
ComputedPropertyName
negative:
phase: parse
type: SyntaxError
--- |
634 |
identifier-shorthand-invalid-zero.js |
---
description: >
Object literal shorthands are only valid with identifier references,
not property names. (0)
esid: sec-object-initializer
info: |
PropertyDefinition:
IdentifierReference
CoverInitializedName
PropertyName : AssignmentExpression
MethodDefinition
negative:
phase: parse
type: SyntaxError
--- |
535 |
identifier-shorthand-let-invalid-strict-mode.js |
---
description: >
Object literal shorthands are limited to valid identifier references. Future Reserved Words are disallowed in Strict Mode. (let)
esid: sec-object-initializer
flags: [noStrict]
info: |
PropertyDefinition:
IdentifierReference
CoverInitializedName
PropertyName : AssignmentExpression
MethodDefinition
Identifier : IdentifierName but not ReservedWord
It is a Syntax Error if this phrase is contained in strict mode code and
the StringValue of IdentifierName is: "implements", "interface", "let",
"package", "private", "protected", "public", "static", or "yield".
negative:
phase: parse
type: SyntaxError
--- |
913 |
identifier-shorthand-package-invalid-strict-mode.js |
---
description: >
Object literal shorthands are limited to valid identifier references. Future Reserved Words are disallowed in Strict Mode. (package)
esid: sec-object-initializer
flags: [noStrict]
info: |
PropertyDefinition:
IdentifierReference
CoverInitializedName
PropertyName : AssignmentExpression
MethodDefinition
Identifier : IdentifierName but not ReservedWord
It is a Syntax Error if this phrase is contained in strict mode code and
the StringValue of IdentifierName is: "implements", "interface", "let",
"package", "private", "protected", "public", "static", or "yield".
negative:
phase: parse
type: SyntaxError
--- |
925 |
identifier-shorthand-private-invalid-strict-mode.js |
---
description: >
Object literal shorthands are limited to valid identifier references. Future Reserved Words are disallowed in Strict Mode. (private)
esid: sec-object-initializer
flags: [noStrict]
info: |
PropertyDefinition:
IdentifierReference
CoverInitializedName
PropertyName : AssignmentExpression
MethodDefinition
Identifier : IdentifierName but not ReservedWord
It is a Syntax Error if this phrase is contained in strict mode code and
the StringValue of IdentifierName is: "implements", "interface", "let",
"package", "private", "protected", "public", "static", or "yield".
negative:
phase: parse
type: SyntaxError
--- |
924 |
identifier-shorthand-protected-invalid-strict-mode.js |
---
description: >
Object literal shorthands are limited to valid identifier references. Future Reserved Words are disallowed in Strict Mode. (protected)
esid: sec-object-initializer
flags: [noStrict]
info: |
PropertyDefinition:
IdentifierReference
CoverInitializedName
PropertyName : AssignmentExpression
MethodDefinition
Identifier : IdentifierName but not ReservedWord
It is a Syntax Error if this phrase is contained in strict mode code and
the StringValue of IdentifierName is: "implements", "interface", "let",
"package", "private", "protected", "public", "static", or "yield".
negative:
phase: parse
type: SyntaxError
--- |
931 |
identifier-shorthand-public-invalid-strict-mode.js |
---
description: >
Object literal shorthands are limited to valid identifier references. Future Reserved Words are disallowed in Strict Mode. (public)
esid: sec-object-initializer
flags: [noStrict]
info: |
PropertyDefinition:
IdentifierReference
CoverInitializedName
PropertyName : AssignmentExpression
MethodDefinition
Identifier : IdentifierName but not ReservedWord
It is a Syntax Error if this phrase is contained in strict mode code and
the StringValue of IdentifierName is: "implements", "interface", "let",
"package", "private", "protected", "public", "static", or "yield".
negative:
phase: parse
type: SyntaxError
--- |
922 |
identifier-shorthand-static-init-await-invalid.js |
---
esid: sec-class-definitions-static-semantics-early-errors
description: IdentifierReference may not be `await` within class static blocks
info: |
IdentifierReference : Identifier
- It is a Syntax Error if the code matched by this production is nested,
directly or indirectly (but not crossing function or static initialization
block boundaries), within a ClassStaticBlock and the StringValue of
Identifier is "arguments" or "await".
negative:
phase: parse
type: SyntaxError
features: [class-static-block]
--- |
771 |
identifier-shorthand-static-init-await-valid.js |
---
esid: sec-class-definitions-static-semantics-early-errors
description: The `await` keyword is interpreted as an identifier within the body of arrow functions
info: |
ClassStaticBlockBody : ClassStaticBlockStatementList
[...]
- It is a Syntax Error if ContainsAwait of ClassStaticBlockStatementList is true.
features: [class-static-block]
--- |
570 |
identifier-shorthand-static-invalid-strict-mode.js |
---
description: >
Object literal shorthands are limited to valid identifier references. Future Reserved Words are disallowed in Strict Mode. (static)
esid: sec-object-initializer
flags: [noStrict]
info: |
PropertyDefinition:
IdentifierReference
CoverInitializedName
PropertyName : AssignmentExpression
MethodDefinition
Identifier : IdentifierName but not ReservedWord
It is a Syntax Error if this phrase is contained in strict mode code and
the StringValue of IdentifierName is: "implements", "interface", "let",
"package", "private", "protected", "public", "static", or "yield".
negative:
phase: parse
type: SyntaxError
--- |
922 |
identifier-shorthand-yield-invalid-strict-mode.js |
---
description: >
Object literal shorthands are limited to valid identifier references. Future Reserved Words are disallowed in Strict Mode. (yield)
esid: sec-object-initializer
flags: [noStrict]
info: |
PropertyDefinition:
IdentifierReference
CoverInitializedName
PropertyName : AssignmentExpression
MethodDefinition
Identifier : IdentifierName but not ReservedWord
It is a Syntax Error if this phrase is contained in strict mode code and
the StringValue of IdentifierName is: "implements", "interface", "let",
"package", "private", "protected", "public", "static", or "yield".
negative:
phase: parse
type: SyntaxError
--- |
919 |
let-non-strict-access.js |
---
es6id: 12.2.5
description: >
In non-strict mode, let is a valid Identifier.
flags: [noStrict]
--- |
373 |
let-non-strict-syntax.js |
---
es6id: 12.2.5
description: >
In non-strict mode, let is a valid Identifier.
flags: [noStrict]
--- |
303 |
literal-property-name-bigint.js |
---
description: >
BigInt in LiteralPropertyName must be valid and the property name must be
the string representation of the numeric value.
esid: prod-PropertyName
info: |
PropertyName[Yield, Await]:
LiteralPropertyName
ComputedPropertyName[?Yield, ?Await]
LiteralPropertyName:
IdentifierName
StringLiteral
NumericLiteral
NumericLiteral:
DecimalLiteral
DecimalBigIntegerLiteral
LiteralPropertyName: NumericLiteral
1. Let _nbr_ be the NumericValue of |NumericLiteral|.
1. Return ! ToString(_nbr_).
features: [BigInt, class, destructuring-binding, let]
--- |
1544 |
method-definition |
|
|
method.js |
---
es6id: 12.2.5
description: >
super method calls in object literal method
--- |
852 |
not-defined.js |
---
es6id: 12.2.5
description: >
Throws when IdentifierReference is undefined
--- |
322 |
object-spread-proxy-get-not-called-on-dontenum-keys.js |
---
esid: sec-object-initializer-runtime-semantics-propertydefinitionevaluation
description: >
Proxy's "get" trap is not invoked for non-enumerable keys.
info: |
PropertyDefinition : ... AssignmentExpression
[...]
3. Let excludedNames be a new empty List.
4. Return ? CopyDataProperties(object, fromValue, excludedNames).
CopyDataProperties ( target, source, excludedItems )
[...]
5. Let keys be ? from.[[OwnPropertyKeys]]().
6. For each element nextKey of keys in List order, do
[...]
c. If excluded is false, then
i. Let desc be ? from.[[GetOwnProperty]](nextKey).
ii. If desc is not undefined and desc.[[Enumerable]] is true, then
1. Let propValue be ? Get(from, nextKey).
2. Perform ! CreateDataPropertyOrThrow(target, nextKey, propValue).
[[OwnPropertyKeys]] ( )
[...]
7. Let trapResultArray be ? Call(trap, handler, « target »).
8. Let trapResult be ? CreateListFromArrayLike(trapResultArray, « String, Symbol »).
[...]
23. Return trapResult.
features: [object-spread, Proxy, Symbol]
includes: [compareArray.js, propertyHelper.js]
--- |
2650 |
object-spread-proxy-no-excluded-keys.js |
---
esid: sec-object-initializer-runtime-semantics-propertydefinitionevaluation
description: >
Proxy's "getOwnPropertyDescriptor" trap is invoked for all keys.
info: |
PropertyDefinition : ... AssignmentExpression
[...]
3. Let excludedNames be a new empty List.
4. Return ? CopyDataProperties(object, fromValue, excludedNames).
CopyDataProperties ( target, source, excludedItems )
[...]
5. Let keys be ? from.[[OwnPropertyKeys]]().
6. For each element nextKey of keys in List order, do
[...]
c. If excluded is false, then
i. Let desc be ? from.[[GetOwnProperty]](nextKey).
[[OwnPropertyKeys]] ( )
[...]
7. Let trapResultArray be ? Call(trap, handler, « target »).
8. Let trapResult be ? CreateListFromArrayLike(trapResultArray, « String, Symbol »).
[...]
23. Return trapResult.
features: [object-spread, Proxy, Symbol]
includes: [compareArray.js]
--- |
1401 |
object-spread-proxy-ownkeys-returned-keys-order.js |
---
esid: sec-object-initializer-runtime-semantics-propertydefinitionevaluation
description: >
Proxy keys are iterated in order they were provided by "ownKeys" trap.
info: |
PropertyDefinition : ... AssignmentExpression
[...]
3. Let excludedNames be a new empty List.
4. Return ? CopyDataProperties(object, fromValue, excludedNames).
CopyDataProperties ( target, source, excludedItems )
[...]
5. Let keys be ? from.[[OwnPropertyKeys]]().
6. For each element nextKey of keys in List order, do
[...]
c. If excluded is false, then
i. Let desc be ? from.[[GetOwnProperty]](nextKey).
[[OwnPropertyKeys]] ( )
[...]
7. Let trapResultArray be ? Call(trap, handler, « target »).
8. Let trapResult be ? CreateListFromArrayLike(trapResultArray, « String, Symbol »).
[...]
23. Return trapResult.
features: [object-spread, Proxy, Symbol]
includes: [compareArray.js]
--- |
1366 |
prop-def-id-eval-error-2.js |
---
es6id: 12.2.5.9
description: >
Errors thrown during IdentifierReference evaluation are forwarded to the
runtime.
flags: [noStrict]
features: [Proxy]
--- |
490 |
prop-def-id-eval-error.js |
---
es6id: 12.2.5.9
description: >
Errors thrown during IdentifierReference evaluation are forwarded to the
runtime.
flags: [noStrict]
features: [Symbol, Symbol.unscopables]
--- |
520 |
prop-def-id-get-error.js |
---
es6id: 12.2.5.9
description: >
Errors thrown during IdentifierReference value retrieval are forwarded to
the runtime.
--- |
368 |
prop-def-id-valid.js |
---
es6id: 12.2.5.9
description: >
When a valid IdentifierReference appears in an object initializer, a new
data property is created. The property name is the string value of the
identifier, the property value is the value of the identifier, and the
property is enumerable, writable, and configurable.
includes: [propertyHelper.js]
--- |
666 |
prop-def-invalid-async-prefix.js |
---
description: >
async is not a valid prefix of an identifier reference
esid: sec-object-initializer
info: |
PropertyDefinition:
IdentifierReference
CoverInitializedName
PropertyName : AssignmentExpression
MethodDefinition
MethodDefinition:
PropertyName ( UniqueFormalParameters ) { FunctionBody }
AsyncMethod
AsyncMethod:
async [no LineTerminator here] PropertyName ( UniqueFormalParameters ) { AsyncFunctionBody }
VariableDeclaration : BindingPattern Initializer
1. Let rhs be the result of evaluating Initializer.
2. Let rval be GetValue(rhs).
3. ReturnIfAbrupt(rval).
4. Return the result of performing BindingInitialization for
BindingPattern passing rval and undefined as arguments.
negative:
phase: parse
type: SyntaxError
--- |
1046 |
prop-def-invalid-star-prefix.js |
---
description: >
is not a valid prefix of an identifier reference
esid: sec-object-initializer
info: |
PropertyDefinition:
IdentifierReference
CoverInitializedName
PropertyName : AssignmentExpression
MethodDefinition
negative:
phase: parse
type: SyntaxError
--- |
505 |
prop-dup-data-data.js |
---
info: |
Refer 11.1.5;
The production
PropertyNameAndValueList : PropertyNameAndValueList , PropertyAssignment
4. If previous is not undefined then throw a SyntaxError exception if any of the following conditions are true
a. This production is contained in strict code and IsDataDescriptor(previous) is true and IsDataDescriptor(propId.descriptor) is true
es5id: 11.1.5_4-4-a-2
description: >
Object literal - Duplicate data property name allowed if not in
strict mode
--- |
698 |
prop-dup-data-set.js |
---
es5id: 11.1.5_4-4-b-2
description: >
Object literal - No SyntaxError if a data property definition is
followed by set accessor definition with the same name
--- |
372 |
prop-dup-get-data.js |
---
es5id: 11.1.5_4-4-c-1
description: >
Object literal - No SyntaxError if a get accessor property definition
is followed by a data property definition with the same name
--- |
382 |
prop-dup-get-get.js |
---
es5id: 11.1.5_4-4-d-1
description: Object literal - No SyntaxError for duplicate property name (get,get)
--- |
317 |
prop-dup-get-set-get.js |
---
es5id: 11.1.5_4-4-d-3
description: >
Object literal - No SyntaxError for duplicate property name
(get,set,get)
--- |
350 |
prop-dup-set-data.js |
---
es5id: 11.1.5_4-4-c-2
description: >
Object literal - No SyntaxError if a set accessor property definition
is followed by a data property definition with the same name
--- |
383 |
prop-dup-set-get-set.js |
---
es5id: 11.1.5_4-4-d-4
description: >
Object literal - No SyntaxError for duplicate property name
(set,get,set)
--- |
354 |
prop-dup-set-set.js |
---
es5id: 11.1.5_4-4-d-2
description: Object literal - No SyntaxError for duplicate property name (set,set)
--- |
324 |
properties-names-eval-arguments.js |
---
es6id: 12.2.5
description: >
property names `eval` and `arguments`
--- |
446 |
property-name-yield.js |
---
description: >
`yield` may be used as a literal property name in an object literal.
es6id: 12.1.1
--- |
292 |
S11.1.5_A1.1.js |
---
info: "Evaluate the production ObjectLiteral: { }"
es5id: 11.1.5_A1.1
description: >
Checking various properteis of the object defined with "var object
= {}"
--- |
1011 |
S11.1.5_A1.2.js |
---
info: |
Evaluate the production ObjectLiteral: { NumericLiteral :
AssignmentExpression}
es5id: 11.1.5_A1.2
description: >
Checking various properteis and contents of the object defined
with "var object = {1 : true}"
--- |
1167 |
S11.1.5_A1.3.js |
---
info: |
Evaluate the production ObjectLiteral: { StringLiteral :
AssignmentExpression}
es5id: 11.1.5_A1.3
description: >
Checking various properteis and contents of the object defined
with "var object = {"x" : true}"
--- |
1178 |
S11.1.5_A1.4.js |
---
info: |
Evaluate the production ObjectLiteral: { Identifier :
AssignmentExpression}
es5id: 11.1.5_A1.4
description: >
Checking various properteis and contents of the object defined
with "var object = {prop : true}"
--- |
1194 |
S11.1.5_A2.js |
---
info: |
Evaluate the production ObjectLiteral: { PropertyName :
AssignmentExpression }
es5id: 11.1.5_A2
description: Creating property "prop" of various types(boolean, number and etc.)
--- |
2774 |
S11.1.5_A3.js |
---
info: "Evaluate the production ObjectLiteral: { PropertyNameAndValueList }"
es5id: 11.1.5_A3
description: >
Creating the object defined with "var object = {0 : 1, "1" : "x",
o : {}}"
--- |
892 |
S11.1.5_A4.1.js |
---
info: The PropertyName is not really a BooleanLiteral
es5id: 11.1.5_A4.1
description: "Checking if execution of \"var object = {true : 1}\" does not fail"
--- |
358 |
S11.1.5_A4.2.js |
---
info: The PropertyName is not really a nullLiteral
es5id: 11.1.5_A4.2
description: "Checking if execution of \"var object = {null : true}\" does not fail"
--- |
361 |
S11.1.5_A4.3.js |
---
info: |
The PropertyName is undefined, ToString(BooleanLiteral),
ToString(nullLiteral)
es5id: 11.1.5_A4.3
description: "Creating properties with following names: undefined, 'true', 'null'"
--- |
1034 |
scope-gen-meth-body-lex-distinct.js |
---
esid: sec-functiondeclarationinstantiation
description: >
Creation of new lexical environment (distinct from the variable
environment) for the function body outside of strict mode
info: |
[...]
29. If strict is false, then
a. Let lexEnv be NewDeclarativeEnvironment(varEnv).
b. NOTE: Non-strict functions use a separate lexical Environment Record
for top-level lexical declarations so that a direct eval can
determine whether any var scoped declarations introduced by the eval
code conflict with pre-existing top-level lexically scoped
declarations. This is not needed for strict functions because a
strict direct eval always places all declarations into a new
Environment Record.
[...]
18.2.1.3 Runtime Semantics: EvalDeclarationInstantiation
[...]
5. If strict is false, then
[...]
b. Let thisLex be lexEnv.
c. Assert: The following loop will terminate.
d. Repeat while thisLex is not the same as varEnv,
i. Let thisEnvRec be thisLex's EnvironmentRecord.
ii. If thisEnvRec is not an object Environment Record, then
1. NOTE: The environment of with statements cannot contain any
lexical declaration so it doesn't need to be checked for
var/let hoisting conflicts.
2. For each name in varNames, do
a. If thisEnvRec.HasBinding(name) is true, then
i. Throw a SyntaxError exception.
ii. NOTE: Annex B.3.5 defines alternate semantics for the
above step.
b. NOTE: A direct eval will not hoist var declaration over a
like-named lexical declaration.
iii. Let thisLex be thisLex's outer environment reference.
flags: [noStrict]
features: [generators, let]
--- |
2211 |
scope-gen-meth-param-elem-var-close.js |
---
esid: sec-functiondeclarationinstantiation
description: >
sloppy direct evals in params introduce vars
info: |
[...]
20. Else,
a. NOTE: A separate Environment Record is needed to ensure that bindings created by direct eval calls in the formal parameter list are outside the environment where parameters are declared.
b. Let calleeEnv be the LexicalEnvironment of calleeContext.
c. Let env be NewDeclarativeEnvironment(calleeEnv).
d. Let envRec be env's EnvironmentRecord.
[...]
flags: [noStrict]
features: [generators]
--- |
1092 |
scope-gen-meth-param-elem-var-open.js |
---
esid: sec-functiondeclarationinstantiation
description: >
sloppy direct evals in params introduce vars
info: |
[...]
20. Else,
a. NOTE: A separate Environment Record is needed to ensure that bindings created by direct eval calls in the formal parameter list are outside the environment where parameters are declared.
b. Let calleeEnv be the LexicalEnvironment of calleeContext.
c. Let env be NewDeclarativeEnvironment(calleeEnv).
d. Let envRec be env's EnvironmentRecord.
[...]
flags: [noStrict]
features: [generators]
--- |
995 |
scope-gen-meth-param-rest-elem-var-close.js |
---
esid: sec-functiondeclarationinstantiation
description: >
sloppy direct evals in params introduce vars
info: |
[...]
20. Else,
a. NOTE: A separate Environment Record is needed to ensure that bindings created by direct eval calls in the formal parameter list are outside the environment where parameters are declared.
b. Let calleeEnv be the LexicalEnvironment of calleeContext.
c. Let env be NewDeclarativeEnvironment(calleeEnv).
d. Let envRec be env's EnvironmentRecord.
[...]
flags: [noStrict]
features: [generators]
--- |
1018 |
scope-gen-meth-param-rest-elem-var-open.js |
---
esid: sec-functiondeclarationinstantiation
description: >
sloppy direct evals in params introduce vars
info: |
[...]
20. Else,
a. NOTE: A separate Environment Record is needed to ensure that bindings created by direct eval calls in the formal parameter list are outside the environment where parameters are declared.
b. Let calleeEnv be the LexicalEnvironment of calleeContext.
c. Let env be NewDeclarativeEnvironment(calleeEnv).
d. Let envRec be env's EnvironmentRecord.
[...]
flags: [noStrict]
features: [generators]
--- |
1000 |
scope-gen-meth-paramsbody-var-close.js |
---
esid: sec-functiondeclarationinstantiation
description: >
Disposal of variable environment for the function body
info: |
[...]
26. If hasParameterExpressions is false, then
[...]
27. Else,
a. NOTE A separate Environment Record is needed to ensure that closures
created by expressions in the formal parameter list do not have
visibility of declarations in the function body.
b. Let varEnv be NewDeclarativeEnvironment(env).
c. Let varEnvRec be varEnv's EnvironmentRecord.
d. Set the VariableEnvironment of calleeContext to varEnv.
e. Let instantiatedVarNames be a new empty List.
[...]
features: [generators]
--- |
1171 |
scope-gen-meth-paramsbody-var-open.js |
---
esid: sec-functiondeclarationinstantiation
description: >
Creation of new variable environment for the function body (as distinct from
that for the function's parameters)
info: |
[...]
26. If hasParameterExpressions is false, then
[...]
27. Else,
a. NOTE A separate Environment Record is needed to ensure that closures
created by expressions in the formal parameter list do not have
visibility of declarations in the function body.
b. Let varEnv be NewDeclarativeEnvironment(env).
c. Let varEnvRec be varEnv's EnvironmentRecord.
d. Set the VariableEnvironment of calleeContext to varEnv.
e. Let instantiatedVarNames be a new empty List.
[...]
features: [generators]
--- |
1208 |
scope-getter-body-lex-distinc.js |
---
esid: sec-functiondeclarationinstantiation
description: >
Creation of new lexical environment (distinct from the variable
environment) for the function body outside of strict mode
info: |
[...]
29. If strict is false, then
a. Let lexEnv be NewDeclarativeEnvironment(varEnv).
b. NOTE: Non-strict functions use a separate lexical Environment Record
for top-level lexical declarations so that a direct eval can
determine whether any var scoped declarations introduced by the eval
code conflict with pre-existing top-level lexically scoped
declarations. This is not needed for strict functions because a
strict direct eval always places all declarations into a new
Environment Record.
[...]
18.2.1.3 Runtime Semantics: EvalDeclarationInstantiation
[...]
5. If strict is false, then
[...]
b. Let thisLex be lexEnv.
c. Assert: The following loop will terminate.
d. Repeat while thisLex is not the same as varEnv,
i. Let thisEnvRec be thisLex's EnvironmentRecord.
ii. If thisEnvRec is not an object Environment Record, then
1. NOTE: The environment of with statements cannot contain any
lexical declaration so it doesn't need to be checked for
var/let hoisting conflicts.
2. For each name in varNames, do
a. If thisEnvRec.HasBinding(name) is true, then
i. Throw a SyntaxError exception.
ii. NOTE: Annex B.3.5 defines alternate semantics for the
above step.
b. NOTE: A direct eval will not hoist var declaration over a
like-named lexical declaration.
iii. Let thisLex be thisLex's outer environment reference.
flags: [noStrict]
features: [let]
--- |
2176 |
scope-meth-body-lex-distinct.js |
---
esid: sec-functiondeclarationinstantiation
description: >
Creation of new lexical environment (distinct from the variable
environment) for the function body outside of strict mode
info: |
[...]
29. If strict is false, then
a. Let lexEnv be NewDeclarativeEnvironment(varEnv).
b. NOTE: Non-strict functions use a separate lexical Environment Record
for top-level lexical declarations so that a direct eval can
determine whether any var scoped declarations introduced by the eval
code conflict with pre-existing top-level lexically scoped
declarations. This is not needed for strict functions because a
strict direct eval always places all declarations into a new
Environment Record.
[...]
18.2.1.3 Runtime Semantics: EvalDeclarationInstantiation
[...]
5. If strict is false, then
[...]
b. Let thisLex be lexEnv.
c. Assert: The following loop will terminate.
d. Repeat while thisLex is not the same as varEnv,
i. Let thisEnvRec be thisLex's EnvironmentRecord.
ii. If thisEnvRec is not an object Environment Record, then
1. NOTE: The environment of with statements cannot contain any
lexical declaration so it doesn't need to be checked for
var/let hoisting conflicts.
2. For each name in varNames, do
a. If thisEnvRec.HasBinding(name) is true, then
i. Throw a SyntaxError exception.
ii. NOTE: Annex B.3.5 defines alternate semantics for the
above step.
b. NOTE: A direct eval will not hoist var declaration over a
like-named lexical declaration.
iii. Let thisLex be thisLex's outer environment reference.
flags: [noStrict]
features: [let]
--- |
2154 |
scope-meth-param-elem-var-close.js |
---
esid: sec-functiondeclarationinstantiation
description: >
sloppy direct evals in params introduce vars
info: |
[...]
20. Else,
a. NOTE: A separate Environment Record is needed to ensure that bindings created by direct eval calls in the formal parameter list are outside the environment where parameters are declared.
b. Let calleeEnv be the LexicalEnvironment of calleeContext.
c. Let env be NewDeclarativeEnvironment(calleeEnv).
d. Let envRec be env's EnvironmentRecord.
[...]
flags: [noStrict]
--- |
1061 |
scope-meth-param-elem-var-open.js |
---
esid: sec-functiondeclarationinstantiation
description: >
sloppy direct evals in params introduce vars
info: |
[...]
20. Else,
a. NOTE: A separate Environment Record is needed to ensure that bindings created by direct eval calls in the formal parameter list are outside the environment where parameters are declared.
b. Let calleeEnv be the LexicalEnvironment of calleeContext.
c. Let env be NewDeclarativeEnvironment(calleeEnv).
d. Let envRec be env's EnvironmentRecord.
[...]
flags: [noStrict]
--- |
964 |
scope-meth-param-rest-elem-var-close.js |
---
esid: sec-functiondeclarationinstantiation
description: >
sloppy direct evals in params introduce vars
info: |
[...]
20. Else,
a. NOTE: A separate Environment Record is needed to ensure that bindings created by direct eval calls in the formal parameter list are outside the environment where parameters are declared.
b. Let calleeEnv be the LexicalEnvironment of calleeContext.
c. Let env be NewDeclarativeEnvironment(calleeEnv).
d. Let envRec be env's EnvironmentRecord.
[...]
flags: [noStrict]
--- |
987 |
scope-meth-param-rest-elem-var-open.js |
---
esid: sec-functiondeclarationinstantiation
description: >
sloppy direct evals in params introduce vars
info: |
[...]
20. Else,
a. NOTE: A separate Environment Record is needed to ensure that bindings created by direct eval calls in the formal parameter list are outside the environment where parameters are declared.
b. Let calleeEnv be the LexicalEnvironment of calleeContext.
c. Let env be NewDeclarativeEnvironment(calleeEnv).
d. Let envRec be env's EnvironmentRecord.
[...]
flags: [noStrict]
--- |
969 |
scope-meth-paramsbody-var-close.js |
---
esid: sec-functiondeclarationinstantiation
description: >
Disposal of variable environment for the function body
info: |
[...]
26. If hasParameterExpressions is false, then
[...]
27. Else,
a. NOTE A separate Environment Record is needed to ensure that closures
created by expressions in the formal parameter list do not have
visibility of declarations in the function body.
b. Let varEnv be NewDeclarativeEnvironment(env).
c. Let varEnvRec be varEnv's EnvironmentRecord.
d. Set the VariableEnvironment of calleeContext to varEnv.
e. Let instantiatedVarNames be a new empty List.
[...]
--- |
1140 |
scope-meth-paramsbody-var-open.js |
---
esid: sec-functiondeclarationinstantiation
description: >
Creation of new variable environment for the function body (as distinct from
that for the function's parameters)
info: |
[...]
26. If hasParameterExpressions is false, then
[...]
27. Else,
a. NOTE A separate Environment Record is needed to ensure that closures
created by expressions in the formal parameter list do not have
visibility of declarations in the function body.
b. Let varEnv be NewDeclarativeEnvironment(env).
c. Let varEnvRec be varEnv's EnvironmentRecord.
d. Set the VariableEnvironment of calleeContext to varEnv.
e. Let instantiatedVarNames be a new empty List.
[...]
--- |
1177 |
scope-setter-body-lex-distinc.js |
---
esid: sec-functiondeclarationinstantiation
description: >
Creation of new lexical environment (distinct from the variable
environment) for the function body outside of strict mode
info: |
[...]
29. If strict is false, then
a. Let lexEnv be NewDeclarativeEnvironment(varEnv).
b. NOTE: Non-strict functions use a separate lexical Environment Record
for top-level lexical declarations so that a direct eval can
determine whether any var scoped declarations introduced by the eval
code conflict with pre-existing top-level lexically scoped
declarations. This is not needed for strict functions because a
strict direct eval always places all declarations into a new
Environment Record.
[...]
18.2.1.3 Runtime Semantics: EvalDeclarationInstantiation
[...]
5. If strict is false, then
[...]
b. Let thisLex be lexEnv.
c. Assert: The following loop will terminate.
d. Repeat while thisLex is not the same as varEnv,
i. Let thisEnvRec be thisLex's EnvironmentRecord.
ii. If thisEnvRec is not an object Environment Record, then
1. NOTE: The environment of with statements cannot contain any
lexical declaration so it doesn't need to be checked for
var/let hoisting conflicts.
2. For each name in varNames, do
a. If thisEnvRec.HasBinding(name) is true, then
i. Throw a SyntaxError exception.
ii. NOTE: Annex B.3.5 defines alternate semantics for the
above step.
b. NOTE: A direct eval will not hoist var declaration over a
like-named lexical declaration.
iii. Let thisLex be thisLex's outer environment reference.
flags: [noStrict]
features: [let]
--- |
2184 |
scope-setter-paramsbody-var-close.js |
---
esid: sec-functiondeclarationinstantiation
description: >
Disposal of variable environment for the function body
info: |
[...]
26. If hasParameterExpressions is false, then
[...]
27. Else,
a. NOTE A separate Environment Record is needed to ensure that closures
created by expressions in the formal parameter list do not have
visibility of declarations in the function body.
b. Let varEnv be NewDeclarativeEnvironment(env).
c. Let varEnvRec be varEnv's EnvironmentRecord.
d. Set the VariableEnvironment of calleeContext to varEnv.
e. Let instantiatedVarNames be a new empty List.
[...]
--- |
1149 |
scope-setter-paramsbody-var-open.js |
---
esid: sec-functiondeclarationinstantiation
description: >
Creation of new variable environment for the function body (as distinct from
that for the function's parameters)
info: |
[...]
26. If hasParameterExpressions is false, then
[...]
27. Else,
a. NOTE A separate Environment Record is needed to ensure that closures
created by expressions in the formal parameter list do not have
visibility of declarations in the function body.
b. Let varEnv be NewDeclarativeEnvironment(env).
c. Let varEnvRec be varEnv's EnvironmentRecord.
d. Set the VariableEnvironment of calleeContext to varEnv.
e. Let instantiatedVarNames be a new empty List.
[...]
--- |
1191 |
setter-body-strict-inside.js |
---
es5id: 11.1.5_7-2-2-s
description: >
Strict Mode - SyntaxError is thrown when an assignment to a
reserved word is made in a strict FunctionBody of a
PropertyAssignment
negative:
phase: parse
type: SyntaxError
flags: [noStrict]
--- |
508 |
setter-body-strict-outside-strict.js |
---
es5id: 11.1.5_7-2-1-s
description: >
Strict Mode - SyntaxError is thrown when an assignment to a
reserved word is contained in strict code
negative:
phase: parse
type: SyntaxError
flags: [onlyStrict]
--- |
472 |
setter-length-dflt.js |
---
es6id: 14.1.6
description: >
Default parameters' effect on function length
info: |
Function length is counted by the non initialized parameters in the left.
9.2.4 FunctionInitialize (F, kind, ParameterList, Body, Scope)
[...]
2. Let len be the ExpectedArgumentCount of ParameterList.
3. Perform ! DefinePropertyOrThrow(F, "length", PropertyDescriptor{[[Value]]:
len, [[Writable]]: false, [[Enumerable]]: false, [[Configurable]]: true}).
[...]
FormalsList : FormalParameter
1. If HasInitializer of FormalParameter is true return 0
2. Return 1.
FormalsList : FormalsList , FormalParameter
1. Let count be the ExpectedArgumentCount of FormalsList.
2. If HasInitializer of FormalsList is true or HasInitializer of
FormalParameter is true, return count.
3. Return count+1.
features: [default-parameters]
includes: [propertyHelper.js]
--- |
1241 |
setter-param-arguments-strict-inside.js |
---
es5id: 11.1.5-4-s
description: >
Strict Mode - SyntaxError is thrown when 'arguments' occurs as
the Identifier in a PropertySetParameterList of a
PropertyAssignment if its FunctionBody is strict code
negative:
phase: parse
type: SyntaxError
flags: [noStrict]
--- |
528 |
setter-param-arguments-strict-outside-strict.js |
---
es5id: 11.1.5-2-s
description: >
Strict Mode - SyntaxError is thrown when 'arguments' occurs as the
Identifier in a PropertySetParameterList of a PropertyAssignment
that is contained in strict code
negative:
phase: parse
type: SyntaxError
flags: [onlyStrict]
--- |
519 |
setter-param-eval-strict-inside.js |
---
es5id: 11.1.5-3-s
description: >
Strict Mode - SyntaxError is thrown when 'evals' occurs as the
Identifier in a PropertySetParameterList of a PropertyAssignment
if its FunctionBody is strict code
negative:
phase: parse
type: SyntaxError
flags: [noStrict]
--- |
519 |
setter-param-eval-strict-outside-strict.js |
---
es5id: 11.1.5-1-s
description: >
Strict Mode - SyntaxError is thrown when 'eval' occurs as the
Identifier in a PropertySetParameterList of a PropertyAssignment
that is contained in strict code
negative:
phase: parse
type: SyntaxError
flags: [onlyStrict]
--- |
509 |
setter-prop-desc.js |
---
esid: sec-object-initializer-runtime-semantics-evaluation
es6id: 12.2.6.8
description: Property descriptor of "set" accessor methods
info: |
ObjectLiteral:
{ PropertyDefinitionList }
{ PropertyDefinitionList , }
1. Let obj be ObjectCreate(%ObjectPrototype%).
2. Let status be the result of performing PropertyDefinitionEvaluation of
PropertyDefinitionList with arguments obj and true.
3. ReturnIfAbrupt(status).
4. Return obj.
14.3.8 Runtime Semantics: PropertyDefinitionEvaluation
MethodDefinition : set PropertyName ( PropertySetParameterList ) { FunctionBody }
[...]
8. Let desc be the PropertyDescriptor{[[Set]]: closure, [[Enumerable]]:
enumerable, [[Configurable]]: true}.
[...]
includes: [propertyHelper.js]
--- |
1349 |
setter-super-prop.js |
---
es6id: 12.2.5
description: >
super method calls in object literal setters
--- |
772 |
shell.js |
|
0 |
yield-non-strict-access.js |
---
es6id: 12.2.5
description: >
In non-strict mode, yield is a valid Identifier.
flags: [noStrict]
--- |
383 |
yield-non-strict-syntax.js |
---
es6id: 12.2.5
description: >
In non-strict mode, yield is a valid Identifier.
flags: [noStrict]
--- |
309 |