Name Description Size
basic.js --- esid: sec-json.rawjson description: Basic functionality of JSON.rawJSON(). info: | JSON.rawJSON ( text ) 1. Let jsonString be ? ToString(text). ... 4. Let internalSlotsList be « [[IsRawJSON]] ». 5. Let obj be OrdinaryObjectCreate(null, internalSlotsList). 6. Perform ! CreateDataPropertyOrThrow(obj, "rawJSON", jsonString). 7. Perform ! SetIntegrityLevel(obj, frozen). 8. Return obj. features: [json-parse-with-source] --- 2079
bigint-raw-json-can-be-stringified.js --- esid: sec-json.rawjson description: BigInt rawJSON can be stringified. info: | JSON.rawJSON ( text ) 1. Let jsonString be ? ToString(text). ... 4. Let internalSlotsList be « [[IsRawJSON]] ». 5. Let obj be OrdinaryObjectCreate(null, internalSlotsList). 6. Perform ! CreateDataPropertyOrThrow(obj, "rawJSON", jsonString). 7. Perform ! SetIntegrityLevel(obj, frozen). 8. Return obj. features: [BigInt, json-parse-with-source] --- 1345
browser.js 0
builtin.js --- esid: sec-json.rawjson description: > JSON.rawJSON meets the requirements for built-in objects info: | JSON.isRawJSON ( O ) 18 ECMAScript Standard Built-in Objects ... Unless specified otherwise, a built-in object that is callable as a function is a built-in function object with the characteristics described in 10.3. Unless specified otherwise, the [[Extensible]] internal slot of a built-in object initially has the value true. Every built-in function object has a [[Realm]] internal slot whose value is the Realm Record of the realm for which the object was initially created. ... Unless otherwise specified every built-in function and every built-in constructor has the Function prototype object, which is the initial value of the expression Function.prototype (20.2.3), as the value of its [[Prototype]] internal slot. ... Built-in function objects that are not identified as constructors do not implement the [[Construct]] internal method unless otherwise specified in the description of a particular function. features: [json-parse-with-source] --- 1920
illegal-empty-and-start-end-chars.js --- esid: sec-json.rawjson description: Throw SyntaxError on empty string, or illegal start/end chars info: | JSON.rawJSON ( text ) 1. Let jsonString be ? ToString(text). 2. Throw a SyntaxError exception if jsonString is the empty String, or if either the first or last code unit of jsonString is any of 0x0009 (CHARACTER TABULATION), 0x000A (LINE FEED), 0x000D (CARRIAGE RETURN), or 0x0020 (SPACE). features: [json-parse-with-source] --- 1133
invalid-JSON-text.js --- esid: sec-json.rawjson description: > Inputs not convertible to string, or convertible to invalid JSON string info: | JSON.rawJSON ( text ) 1. Let jsonString be ? ToString(text). ... 3. Parse StringToCodePoints(jsonString) as a JSON text as specified in ECMA-404. Throw a SyntaxError exception if it is not a valid JSON text as defined in that specification, or if its outermost value is an object or array as defined in that specification. features: [json-parse-with-source] --- 1134
length.js --- esid: sec-built-in-function-objects description: > JSON.rawJSON.length value and descriptor. info: | Every built-in function object, including constructors, has a *"length"* property whose value is a non-negative integral Number. Unless otherwise specified, this value is the number of required parameters shown in the subclause heading for the function description. Optional parameters and rest parameters are not included in the parameter count. Unless otherwise specified, the *"length"* property of a built-in function object has the attributes { [[Writable]]: *false*, [[Enumerable]]: *false*, [[Configurable]]: *true* }. includes: [propertyHelper.js] features: [json-parse-with-source] --- 1210
name.js --- esid: sec-built-in-function-objects description: > JSON.rawJSON.name value and descriptor. info: | Every built-in function object, including constructors, has a *"name"* property whose value is a String. Unless otherwise specified, this value is the name that is given to the function in this specification. Functions that are identified as anonymous functions use the empty String as the value of the *"name"* property. For functions that are specified as properties of objects, the name value is the property name string used to access the function. Functions that are specified as get or set accessor functions of built-in properties have *"get"* or *"set"* (respectively) passed to the prefix parameter when calling CreateBuiltinFunction. The value of the *"name"* property is explicitly specified for each built-in function whose property key is a Symbol value. If such an explicitly specified value starts with the prefix *"get "* or *"set "* and the function for which it is specified is a get or set accessor function of a built-in property, the value without the prefix is passed to the name parameter, and the value *"get"* or *"set"* (respectively) is passed to the prefix parameter when calling CreateBuiltinFunction. Unless otherwise specified, the *"name"* property of a built-in function object has the attributes { [[Writable]]: *false*, [[Enumerable]]: *false*, [[Configurable]]: *true* }. includes: [propertyHelper.js] features: [json-parse-with-source] --- 2041
not-a-constructor.js --- esid: sec-ecmascript-standard-built-in-objects description: > JSON.rawJSON does not implement [[Construct]], is not new-able info: | ECMAScript Function Objects Built-in function objects that are not identified as constructors do not implement the [[Construct]] internal method unless otherwise specified in the description of a particular function. sec-evaluatenew ... 7. If IsConstructor(constructor) is false, throw a TypeError exception. ... includes: [isConstructor.js] features: [json-parse-with-source, Reflect.construct] --- 1077
prop-desc.js --- esid: sec-json.rawjson description: > Property type and descriptor. info: | JSON.rawJSON ( text ) 18 ECMAScript Standard Built-in Objects ... Every other data property described in clauses 19 through 28 and in Annex B.2 has the attributes { [[Writable]]: true, [[Enumerable]]: false, [[Configurable]]: true } unless otherwise specified. includes: [propertyHelper.js] features: [json-parse-with-source] --- 880
returns-expected-object.js --- esid: sec-json.rawjson description: Object returned from JSON.rawJSON() is the expected shape. info: | JSON.rawJSON ( text ) 5. Let _obj_ be OrdinaryObjectCreate(*null*, _internalSlotsList_). 6. Perform ! CreateDataPropertyOrThrow(_obj_, *"rawJSON"*, _jsonString_). ... 8. Return _obj_. includes: [compareArray.js] features: [json-parse-with-source] --- 1548
shell.js --- description: | Test if a given function is a constructor function. defines: [isConstructor] features: [Reflect.construct] --- 596