The brand new options launched in ECMAScript 2019 are as follows:
Image.prototype.description, property of an accessor whose accessor parameter is outlined. Its get accessor operate performs the next steps: Let s be this worth, or sym? thisSymbolValue (s), and return sym. [[Description]]. The aim of this function is to straight expose [[Description]] the inner location of an emblem, slightly than not directly, through Image.prototype.toString.
Modifications to Operate.prototype.toString. Revisions have been proposed, resembling implementations that don’t require retaining the supply textual content for all capabilities outlined utilizing the ECMAScript code.
prototype.flatmap, a map adopted by a flat, affords a slight comfort and a slight optimization. Flatmap is handy as a result of flattening and mapping are sometimes helpful in the identical operation. It is usually an optimization as a result of it’s not essential to allocate a desk for the mapping, simply delete it when flattening.
prototype.type (), a way that kinds parts of an array as a substitute and returns the array, is now steady.
Object.fromEntries, offering a brand new static methodology to remodel a listing of key-value pairs into an object.
String.prototype.trimStart and String.prototype.trimEnd. The explanation for these revisions is that each one main engines have carried out the corresponding trimLeft and trimRight capabilities with no commonplace specification. For consistency with padStart / padEnd, trimStart, trimEnd, trimLeft, and trimRight are offered as aliases for net compatibility.
Updates from JSON.stringify to emit a well-formed UTF-16 (Unicode Transformation Format) format. At the moment, badly fashioned code items may be issued for substitution code factors.
Non-obligatory seize binding, permitting builders to omit a seize hyperlink when the hyperlink wouldn’t be used.