Prise en charge de la fonctionnalité du moteur JavaScript

  • Rversion finale: Yokohama
  • Mis à jour 30 janv. 2025
  • 44 minutes de lecture
  • Comparez les fonctionnalités ECMAScript entre les modes JavaScript ECMAScript 2021 (ES12) et ES5 Standards dans Yokohama. Les deux modes prennent en charge un sous-ensemble de fonctionnalités ECMAScript.

    Pour plus d’informations sur ces fonctionnalités, consultez les spécifications du langage ECMAScript (ECMA-262) sur le site Web d’Ecma International .

    Définitions de support

    Pris en charge
    La fonctionnalité a été testée et validée.
    Non pris en charge
    La fonctionnalité n’a pas été validée dans la version actuelle.
    Rejeté
    La fonctionnalité ne s’aligne pas sur le modèle de programmation ou présente un risque pour la Now Platform sécurité ou les performances. Les fonctionnalités interdites entraînent une erreur.

    Caractéristiques de l’ECMAScript 2022 (ES13)

    Important :
    Avant de déployer le code en production, vous devez tester minutieusement les scripts utilisant les fonctionnalités ECMAScript 2022 (ES13) prises en charge en raison de l’ajout récent et de la prise en charge partielle des fonctionnalités dans cette version ECMAScript.
    Tableau 1. Champs de classe d’instance
    Fonctionnalité Mode ECMAScript 2021 (ES12) Mode standard ES5
    Champs de classes d’instances publiques Pris en charge Non pris en charge
    Prise en charge de base des champs de classe d’instance privée Non pris en charge Non pris en charge
    Initialiseurs de champs de classes d’instances privées Non pris en charge Non pris en charge
    Accès facultatif aux champs de classe d’instance privée Non pris en charge Non pris en charge
    Accès aux champs de classe d’instance de privé profond facultatifs Non pris en charge Non pris en charge
    Champs de classe d’instance calculés Pris en charge Non pris en charge
    Tableau 2. Champs de classe statiques
    Fonctionnalité Mode ECMAScript 2021 (ES12) Mode standard ES5
    Champs de classes statiques publics Pris en charge Non pris en charge
    les champs de classe statique utilisent [[Définir]] Pris en charge Non pris en charge
    Champs de classe statique privée Pris en charge Non pris en charge
    Champs de classe statique calculés Pris en charge Non pris en charge
    Tableau 3. Méthodes de classe privée
    Fonctionnalité Mode ECMAScript 2021 (ES12) Mode standard ES5
    Méthodes d’instances privées Non pris en charge Non pris en charge
    Méthodes statiques privées Pris en charge Non pris en charge
    Propriétés d’accesseur privé Non pris en charge Non pris en charge
    Propriétés des accesseurs statiques privés Pris en charge Non pris en charge
    Tableau 4. .at() sur les indexables intégrés
    Fonctionnalité Mode ECMAScript 2021 (ES12) Mode standard ES5
    Array.prototype.at() Non pris en charge Non pris en charge
    String.prototype.at() Pris en charge Non pris en charge
    %TypedArray%.prototype.at() Rejeté Rejeté
    Tableau 5. Objet.hasOwn
    Fonctionnalité Mode ECMAScript 2021 (ES12) Mode standard ES5
    Fonctionnalité de base Pris en charge Non pris en charge
    ToObject appelé avant ToPropertyKey Pris en charge Non pris en charge
    Tableau 6. Propriété error.cause
    Fonctionnalité Mode ECMAScript 2021 (ES12) Mode standard ES5
    L’erreur a une cause Pris en charge Non pris en charge
    Erreur.prototype manque de cause Pris en charge Non pris en charge
    EvalError a une cause Pris en charge Non pris en charge
    EvalError.prototype manque de cause Pris en charge Non pris en charge
    RangeError a une cause Pris en charge Non pris en charge
    RangeError.prototype manque de cause Pris en charge Non pris en charge
    ReferenceError a une cause Pris en charge Non pris en charge
    ReferenceError.prototype manque de cause Pris en charge Non pris en charge
    SyntaxError a une cause Pris en charge Non pris en charge
    SyntaxError.prototype manque de cause Pris en charge Non pris en charge
    TypeError a une cause Pris en charge Non pris en charge
    TypeError.prototype manque de cause Pris en charge Non pris en charge
    URIError a une cause Pris en charge Non pris en charge
    URIError.prototype manque de cause Pris en charge Non pris en charge
    AggregateError a une cause Pris en charge Non pris en charge
    AggregateError.prototype manque de cause Pris en charge Non pris en charge
    Tableau 7. Index de correspondance RegExp (marqueur 'hasIndices' / 'd')
    Fonctionnalité Mode ECMAScript 2021 (ES12) Mode standard ES5
    constructeur la prend en charge Non pris en charge Non pris en charge
    Apparaît dans les drapeaux Non pris en charge Non pris en charge
    Tableau 8. Contrôles ergonomiques de la marque pour les champs privés
    Fonctionnalité Mode ECMAScript 2021 (ES12) Mode standard ES5
    Contrôles ergonomiques de la marque pour les champs privés Non pris en charge Non pris en charge
    Tableau 9. Blocs d’initialisation statique de classe
    Fonctionnalité Mode ECMAScript 2021 (ES12) Mode standard ES5
    Blocs d’initialisation statique de classe Pris en charge Non pris en charge

    Caractéristiques d’ECMAScript 2021 (ES12)

    Tableau 10. Promettre.n’importe lequel
    Fonctionnalité Mode ECMAScript 2021 (ES12) Mode standard ES5
    accomplissement Rejeté Rejeté
    Erreur d’agrégat Rejeté Rejeté
    Tableau 11. Références faibles
    Fonctionnalité Mode ECMAScript 2021 (ES12) Mode standard ES5
    Prise en charge minimale de WeakRef Rejeté Rejeté
    Prise en charge minimale de FinalizationRegistry Rejeté Rejeté
    Tableau 12. Affectation logique
    Fonctionnalité Mode ECMAScript 2021 (ES12) Mode standard ES5
    ||= prise en charge de base Pris en charge Non pris en charge
    ||= comportement de court-circuit Pris en charge Non pris en charge
    ||= setter non inutilement invoqué Pris en charge Non pris en charge
    &&= Prise en charge de base Pris en charge Non pris en charge
    &&= comportement de court-circuit Pris en charge Non pris en charge
    &&= setter non invoqué inutilement Pris en charge Non pris en charge
    ?? = prise en charge de base Pris en charge Non pris en charge
    ?? = comportement de court-circuit Pris en charge Non pris en charge
    ?? = setter non inutilement invoqué Pris en charge Non pris en charge
    Tableau 13. Séparateurs numériques
    Fonctionnalité Mode ECMAScript 2021 (ES12) Mode standard ES5
    Séparateurs numériques Pris en charge Non pris en charge
    Tableau 14. Chaîne.prototype.remplacer tout
    Fonctionnalité Mode ECMAScript 2021 (ES12) Mode standard ES5
    Chaîne.prototype.remplacer tout Pris en charge Pris en charge

    Caractéristiques d’ECMAScript 2020 (ES11)

    Tableau 15. Chaîne.prototype.matchAll
    Fonctionnalité Mode ECMAScript 2021 (ES12) Mode standard ES5
    Fonctionnalité de base Pris en charge Non pris en charge
    lève une regex non globale Pris en charge Non pris en charge
    Tableau 16. BigInt
    Fonctionnalité Mode ECMAScript 2021 (ES12) Mode standard ES5
    Fonctionnalité de base Non pris en charge Non pris en charge
    constructeur Non pris en charge Non pris en charge
    BigInt.asUintN Non pris en charge Non pris en charge
    BigInt.asIntN Non pris en charge Non pris en charge
    Tableau BigInt64 Non pris en charge Non pris en charge
    Tableau BigUint64 Non pris en charge Non pris en charge
    DataView.prototype.getBigInt64 Non pris en charge Non pris en charge
    DataView.prototype.getBigUint64 Non pris en charge Non pris en charge
    Tableau 17. globalThis
    Fonctionnalité Mode ECMAScript 2021 (ES12) Mode standard ES5
    La propriété globale « globalThis » est un objet global Rejeté Rejeté
    La propriété globale « globalThis » a un descripteur de propriété correct Rejeté Rejeté
    Tableau 18. Opérateur de chaînage en option ( ?.)
    Fonctionnalité Mode ECMAScript 2021 (ES12) Mode standard ES5
    Accès facultatif à la propriété Pris en charge Non pris en charge
    Accès au support en option Pris en charge Non pris en charge
    Appel de méthode facultative Pris en charge Non pris en charge
    Appel de fonction facultatif Pris en charge Non pris en charge
    paramètres d’étalement après chaînage facultatif Pris en charge Non pris en charge
    Tableau 19. Promettre.ToutRéglé
    Fonctionnalité Mode ECMAScript 2021 (ES12) Mode standard ES5
    Promettre.ToutRéglé Rejeté Rejeté
    Tableau 20. Opérateur de coalescence null ( ??)
    Fonctionnalité Mode ECMAScript 2021 (ES12) Mode standard ES5
    opérateur de coalescence nullish ( ??) Pris en charge Non pris en charge

    Caractéristiques d’ECMAScript 2019 (ES10)

    Tableau 21. Symbole.prototype.description
    Fonctionnalité Mode ECMAScript 2021 (ES12) Mode standard ES5
    Élémentaire Pris en charge Non pris en charge
    Description vide Pris en charge Non pris en charge
    Description non définie Pris en charge Non pris en charge
    Tableau 22. Découpage des cordes
    Fonctionnalité Mode ECMAScript 2021 (ES12) Mode standard ES5
    Chaîne.prototype.trimLeft Pris en charge Pris en charge
    String.prototype.trimRight Pris en charge Pris en charge
    Chaîne.prototype.trimStart Pris en charge Non pris en charge
    Chaîne.prototype.trimEnd Pris en charge Non pris en charge
    Tableau 23. Tableau.prototype. {flat, flatMap}
    Fonctionnalité Mode ECMAScript 2021 (ES12) Mode standard ES5
    Tableau.prototype.plat Pris en charge Non pris en charge
    Tableau.prototype.carte plate Pris en charge Non pris en charge
    flat et flatMap dans Array.prototype[@@unscopables] Pris en charge Non pris en charge
    Tableau 24. Object.fromEntries
    Fonctionnalité Mode ECMAScript 2021 (ES12) Mode standard ES5
    Object.fromEntries Pris en charge Non pris en charge
    Tableau 25. Liaison de capture en option
    Fonctionnalité Mode ECMAScript 2021 (ES12) Mode standard ES5
    Élémentaire Rejeté Rejeté
    attendre Rejeté Rejeté
    rendement Rejeté Rejeté
    Tableau 26. Révision Function.prototype.toString
    Fonctionnalité Mode ECMAScript 2021 (ES12) Mode standard ES5
    fonctions créées avec le constructeur de fonction Rejeté Rejeté
    Flèches Rejeté Rejeté
    [code natif] Rejeté Rejeté
    Expression de classe avec constructeur implicite Rejeté Rejeté
    Expression de classe avec constructeur explicite Rejeté Rejeté
    Séquences d’échappement Unicode dans les identificateurs Rejeté Rejeté
    les méthodes et les noms de propriétés calculés Rejeté Rejeté
    Tableau 27. Surensemble JSON
    Fonctionnalité Mode ECMAScript 2021 (ES12) Mode standard ES5
    Le séparateur de lignes peut apparaître dans les chaînes de caractères Rejeté Rejeté
    Le séparateur de paragraphe peut apparaître dans les chaînes de caractères Rejeté Rejeté
    Tableau 28. JSON.stringify bien formé
    Fonctionnalité Mode ECMAScript 2021 (ES12) Mode standard ES5
    JSON.stringify bien formé Rejeté Rejeté

    Caractéristiques d’ECMAScript 2018 (ES9)

    Tableau 29. Propriétés REST/spread de l’objet
    Fonctionnalité Mode ECMAScript 2021 (ES12) Mode standard ES5
    Propriétés REST de l’objet Pris en charge Non pris en charge
    propriétés de la propagation d’objets Pris en charge Non pris en charge
    Tableau 30. Promise.prototype.finally
    Fonctionnalité Mode ECMAScript 2021 (ES12) Mode standard ES5
    Prise en charge de base Rejeté Rejeté
    Ne pas changer la valeur de résolution Rejeté Rejeté
    Modifier la valeur de rejet Rejeté Rejeté
    Tableau 31. Itérateurs asynchrones
    Fonctionnalité Mode ECMAScript 2021 (ES12) Mode standard ES5
    Générateurs asynchrones Rejeté Rejeté
    boucles for-await-of Rejeté Rejeté
    Tableau 32. s (dotAll) pour les expressions régulières
    Fonctionnalité Mode ECMAScript 2021 (ES12) Mode standard ES5
    s (dotAll) pour les expressions régulières Pris en charge Non pris en charge
    Tableau 33. Groupes de capture nommés RegExp
    Fonctionnalité Mode ECMAScript 2021 (ES12) Mode standard ES5
    Groupes de capture nommés RegExp Pris en charge Non pris en charge
    Tableau 34. Assertions de recherche RegExp
    Fonctionnalité Mode ECMAScript 2021 (ES12) Mode standard ES5
    Assertions de recherche RegExp Non pris en charge Non pris en charge
    Tableau 35. Échappements de propriété Unicode RegExp
    Fonctionnalité Mode ECMAScript 2021 (ES12) Mode standard ES5
    Échappements de propriété Unicode RegExp Non pris en charge Non pris en charge
    Tableau 36. Révision littérale du modèle
    Fonctionnalité Mode ECMAScript 2021 (ES12) Mode standard ES5
    Révision littérale du modèle Rejeté Rejeté

    Caractéristiques d’ECMAScript 2017 (ES8)

    Tableau 37. Méthodes statiques des objets
    Fonctionnalité Mode ECMAScript 2021 (ES12) Mode standard ES5
    Object.values Pris en charge Non pris en charge
    Entrées.objets Pris en charge Non pris en charge
    Object.getOwnPropertyDescriptors Pris en charge Non pris en charge
    Object.getOwnPropertyDescriptors ne fournit pas de descripteurs non définis Non pris en charge Non pris en charge
    Tableau 38. Remplissage des chaînes
    Fonctionnalité Mode ECMAScript 2021 (ES12) Mode standard ES5
    Chaîne.prototype.padStart Pris en charge Non pris en charge
    Chaîne.prototype.padEnd Pris en charge Non pris en charge
    Tableau 39. Virgules de fin dans la syntaxe de fonction
    Fonctionnalité Mode ECMAScript 2021 (ES12) Mode standard ES5
    dans les listes de paramètres Pris en charge Non pris en charge
    dans les listes d’arguments Pris en charge Non pris en charge
    Tableau 40. Fonctions asynchrones
    Fonctionnalité Mode ECMAScript 2021 (ES12) Mode standard ES5
    rendre Rejeté Rejeté
    jeter Rejeté Rejeté
    Aucun saut de ligne entre async et fonction Rejeté Rejeté
    pas de propriété « prototype » Rejeté Rejeté
    attendre Rejeté Rejeté
    attendre, rejeter Rejeté Rejeté
    doit attendre une valeur Rejeté Rejeté
    peut attendre les valeurs non promises Rejeté Rejeté
    Impossible d’attendre dans les paramètres Rejeté Rejeté
    méthodes asynchrones, littéraux d’objet Rejeté Rejeté
    méthodes asynchrones, classes Rejeté Rejeté
    Fonctions fléchées asynchrones dans les méthodes, les classes Rejeté Rejeté
    Fonctions fléchées asynchrones Rejeté Rejeté
    chaîne de prototype correcte Rejeté Rejeté
    prototype de fonction asynchrone, Symbol.toStringTag Rejeté Rejeté
    Constructeur de fonction asynchrone Rejeté Rejeté
    Tableau 41. Mémoire partagée et atomiques
    Fonctionnalité Mode ECMAScript 2021 (ES12) Mode standard ES5
    Tampon de tableau partagé Rejeté Rejeté
    SharedArrayBuffer[Symbol.species] Rejeté Rejeté
    SharedArrayBuffer.prototype.byteLength Rejeté Rejeté
    SharedArrayBuffer.prototype.slice Rejeté Rejeté
    SharedArrayBuffer.prototype[Symbol.toStringTag] Rejeté Rejeté
    Atomics.ajouter Rejeté Rejeté
    Atomics.et Rejeté Rejeté
    Atomics.compareExchange Rejeté Rejeté
    Atomics.exchange Rejeté Rejeté
    Atomics.wait Rejeté Rejeté
    Atomics.wake Rejeté Rejeté
    Atomics.isLockFree Rejeté Rejeté
    Atomics.load Rejeté Rejeté
    Atomics.ou Rejeté Rejeté
    Atomics.store Rejeté Rejeté
    Atomics.sub Rejeté Rejeté
    Atomics.xor Rejeté Rejeté
    Tableau 42. Méthodes d’obtention et de réglage Object.prototype
    Fonctionnalité Mode ECMAScript 2021 (ES12) Mode standard ES5
    __defineGetter__ Rejeté Rejeté
    __defineGetter__, symboles Rejeté Rejeté
    __defineGetter__, ToObject(this) Rejeté Rejeté
    __defineSetter__ Rejeté Rejeté
    __defineSetter__, symboles Rejeté Rejeté
    __defineSetter__, ToObject(this) Rejeté Rejeté
    __lookupGetter__ Rejeté Rejeté
    __lookupGetter__, chaîne prototype Rejeté Rejeté
    __lookupGetter__, symboles Rejeté Rejeté
    __lookupGetter__, ToObject(this) Rejeté Rejeté
    __lookupGetter__, les propriétés de données peuvent shadow les accesseurs Rejeté Rejeté
    __lookupSetter__ Rejeté Rejeté
    __lookupSetter__, chaîne prototype Rejeté Rejeté
    __lookupSetter__, symboles Rejeté Rejeté
    __lookupSetter__, ToObject(this) Rejeté Rejeté
    __lookupSetter__, les propriétés de données peuvent shadow les accesseurs Rejeté Rejeté
    Tableau 43. Appels internes proxy, méthodes getter/setter
    Fonctionnalité Mode ECMAScript 2021 (ES12) Mode standard ES5
    __defineGetter__ Rejeté Rejeté
    __defineSetter__ Rejeté Rejeté
    __lookupGetter__ Rejeté Rejeté
    __lookupSetter__ Rejeté Rejeté

    Caractéristiques d’ECMAScript 2016 (ES7)

    Tableau 44. Opérateur d’exponentiation (**)
    Fonctionnalité Mode ECMAScript 2021 (ES12) Mode standard ES5
    Prise en charge de base Pris en charge Non pris en charge
    mission Pris en charge Non pris en charge
    Erreur de syntaxe précoce pour la négation unaire sans parenthèses Rejeté Rejeté
    Tableau 45. Tableau.prototype.includes
    Fonctionnalité Mode ECMAScript 2021 (ES12) Mode standard ES5
    Tableau.prototype.includes Pris en charge Non pris en charge
    Array.prototype.includes est générique Non pris en charge Non pris en charge
    %TypedArray%.prototype.includes Rejeté Rejeté

    Caractéristiques d’ECMAScript 2015 (ES6)

    Tableau 46. Appels de queue appropriés (optimisation des appels de queue)
    Fonctionnalité Mode ECMAScript 2021 (ES12) Mode standard ES5
    Récursivité directe Rejeté Rejeté
    Récursivité réciproque Rejeté Rejeté
    Tableau 47. Paramètres de fonction par défaut
    Fonctionnalité Mode ECMAScript 2021 (ES12) Mode standard ES5
    Fonctionnalité de base Pris en charge Non pris en charge
    non défini explicite s’en remet à la valeur par défaut Pris en charge Non pris en charge
    Les valeurs par défaut peuvent faire référence aux paramètres précédents Pris en charge Non pris en charge
    Interaction des objets des arguments Pris en charge Non pris en charge
    zone morte temporelle Rejeté Rejeté
    Champ d’application distinct Pris en charge Non pris en charge
    nouvelle prise en charge de Function() Rejeté Rejeté
    Tableau 48. Paramètres REST
    Fonctionnalité Mode ECMAScript 2021 (ES12) Mode standard ES5
    Fonctionnalité de base Pris en charge Non pris en charge
    Propriété « longueur » de la fonction Pris en charge Non pris en charge
    Interaction des objets des arguments Non pris en charge Non pris en charge
    ne peut pas être utilisé dans les poseurs Rejeté Rejeté
    nouvelle prise en charge de Function() Rejeté Rejeté
    Tableau 49. Répartir la syntaxe pour les objets itérables
    Fonctionnalité Mode ECMAScript 2021 (ES12) Mode standard ES5
    avec des tableaux, dans des appels de fonction Pris en charge Non pris en charge
    avec des tableaux, dans des littéraux de tableau Pris en charge Non pris en charge
    avec des tableaux épars, dans les appels de fonction Pris en charge Non pris en charge
    avec des tableaux clairsemés, dans des littéraux de tableau Pris en charge Non pris en charge
    avec des chaînes, dans des appels de fonction Pris en charge Non pris en charge
    avec chaînes de caractères, dans des littéraux de tableau Pris en charge Non pris en charge
    avec des chaînes de plan astral, dans les appels de fonction Pris en charge Non pris en charge
    avec des cordes de plan astral, dans des littéraux de tableau Pris en charge Non pris en charge
    avec des instances de générateur, dans les appels Rejeté Rejeté
    avec des instances de générateur, en tableaux Rejeté Rejeté
    avec des itérables génériques, dans les appels Pris en charge Non pris en charge
    avec des itérables génériques, en tableaux Pris en charge Non pris en charge
    avec des instances d’itérables, dans des appels Pris en charge Non pris en charge
    avec des instances d’itérables, dans des tableaux Pris en charge Non pris en charge
    L’étalement de non-itérables est une erreur d’exécution Pris en charge Non pris en charge
    Tableau 50. Extensions littérales d’objets
    Fonctionnalité Mode ECMAScript 2021 (ES12) Mode standard ES5
    Propriétés calculées Pris en charge Non pris en charge
    Propriétés abrégées Pris en charge Non pris en charge
    méthodes abrégées Pris en charge Non pris en charge
    méthodes abrégées à clé de chaîne Pris en charge Non pris en charge
    méthodes abrégées calculées Pris en charge Non pris en charge
    Accesseurs calculés Pris en charge Non pris en charge
    Tableau 51. Boucles For-de
    Fonctionnalité Mode ECMAScript 2021 (ES12) Mode standard ES5
    avec tableaux Pris en charge Non pris en charge
    avec des tableaux clairsemés Pris en charge Non pris en charge
    avec des chaînes Pris en charge Non pris en charge
    avec des cordes de plan astral Pris en charge Non pris en charge
    avec des instances de générateur Rejeté Rejeté
    avec des itérables génériques Pris en charge Non pris en charge
    avec des instances d’itérables génériques Pris en charge Non pris en charge
    fermeture de l’itérateur, pause Pris en charge Non pris en charge
    fermeture de l’itérateur, lancer Pris en charge Non pris en charge
    Tableau 52. Littéraux octaux et binaires
    Fonctionnalité Mode ECMAScript 2021 (ES12) Mode standard ES5
    Littéraux octals Pris en charge Non pris en charge
    Littéraux binaires Pris en charge Non pris en charge
    octal pris en charge par Number() Non pris en charge Non pris en charge
    binaire pris en charge par Number() Non pris en charge Non pris en charge
    Tableau 53. Littéraux des modèles
    Fonctionnalité Mode ECMAScript 2021 (ES12) Mode standard ES5
    Fonctionnalité de base Pris en charge Non pris en charge
    Conversion toString Pris en charge Non pris en charge
    Littéraux de modèles balisés Pris en charge Non pris en charge
    Le tableau transmis est gelé Pris en charge Non pris en charge
    Normalisation de saut de ligne Rejeté Rejeté
    TemplateStrings appelle la mise en cache de site Pris en charge Non pris en charge
    Mise en cache permanente de TemplateStrings Pris en charge Non pris en charge
    Tableau 54. Marqueurs « y » et « u » RegExp
    Fonctionnalité Mode ECMAScript 2021 (ES12) Mode standard ES5
    Marqueur « Y » Pris en charge Non pris en charge
    Marqueur « y », lastIndex Pris en charge Non pris en charge
    Marqueur « U » Non pris en charge Non pris en charge
    Drapeau « u », caractères Unicode non BMP Non pris en charge Non pris en charge
    Marqueur « u », échappements de point de code Unicode Non pris en charge Non pris en charge
    Drapeau « U », boîtier pliant Non pris en charge Non pris en charge
    Tableau 55. Déstructuration, déclarations
    Fonctionnalité Mode ECMAScript 2021 (ES12) Mode standard ES5
    avec tableaux Pris en charge Non pris en charge
    avec des tableaux clairsemés Pris en charge Non pris en charge
    avec des chaînes Pris en charge Non pris en charge
    avec des cordes de plan astral Pris en charge Non pris en charge
    avec des instances de générateur Rejeté Rejeté
    avec des itérables génériques Pris en charge Non pris en charge
    avec des instances d’itérables génériques Pris en charge Non pris en charge
    fermeture de l’itérateur Pris en charge Non pris en charge
    Virgules de fin dans les schémas itérables Pris en charge Non pris en charge
    avec des objets Pris en charge Non pris en charge
    Déstructuration d’objets avec des éléments primitifs Pris en charge Non pris en charge
    Virgules de fin dans les schémas d’objet Pris en charge Non pris en charge
    Levées sur null et indéfini Pris en charge Non pris en charge
    Propriétés calculées Pris en charge Non pris en charge
    Multiples dans une seule instruction var Pris en charge Non pris en charge
    imbriqué Pris en charge Non pris en charge
    dans les têtes de boucle for-in Pris en charge Non pris en charge
    dans les têtes de boucle avant de Pris en charge Non pris en charge
    dans les têtes de capture Pris en charge Non pris en charge
    se reposer Pris en charge Non pris en charge
    Par défaut Pris en charge Non pris en charge
    Par défaut, laissez la zone morte temporelle Rejeté Rejeté
    Tableau 56. Déstructuration, affectation
    Fonctionnalité Mode ECMAScript 2021 (ES12) Mode standard ES5
    avec tableaux Pris en charge Non pris en charge
    avec des tableaux clairsemés Pris en charge Non pris en charge
    avec des chaînes Pris en charge Non pris en charge
    avec des cordes de plan astral Pris en charge Non pris en charge
    avec des instances de générateur Rejeté Rejeté
    avec des itérables génériques Pris en charge Non pris en charge
    avec des instances d’itérables génériques Pris en charge Non pris en charge
    fermeture de l’itérateur Pris en charge Non pris en charge
    Expression de déstructuration itérable Pris en charge Non pris en charge
    Déstructuration itérable chaînée Pris en charge Non pris en charge
    Virgules de fin dans les schémas itérables Pris en charge Non pris en charge
    avec des objets Pris en charge Non pris en charge
    Déstructuration d’objets avec des éléments primitifs Pris en charge Non pris en charge
    Virgules de fin dans les schémas d’objet Pris en charge Non pris en charge
    expression de déstructuration d’objet Pris en charge Non pris en charge
    Le côté gauche entre parenthèses est une erreur de syntaxe Rejeté Rejeté
    Déstructuration d’objets chaînés Pris en charge Non pris en charge
    Levées sur null et indéfini Pris en charge Non pris en charge
    Propriétés calculées Pris en charge Non pris en charge
    imbriqué Pris en charge Non pris en charge
    se reposer Pris en charge Non pris en charge
    REST imbriqué Pris en charge Non pris en charge
    schémas vides Pris en charge Non pris en charge
    Par défaut Pris en charge Non pris en charge
    Tableau 57. Déstructuration, paramètres
    Fonctionnalité Mode ECMAScript 2021 (ES12) Mode standard ES5
    avec tableaux Pris en charge Non pris en charge
    avec des tableaux clairsemés Pris en charge Non pris en charge
    avec des chaînes Pris en charge Non pris en charge
    avec des cordes de plan astral Pris en charge Non pris en charge
    avec des instances de générateur Rejeté Rejeté
    avec des itérables génériques Pris en charge Non pris en charge
    avec des instances d’itérables génériques Pris en charge Non pris en charge
    fermeture de l’itérateur Pris en charge Non pris en charge
    Virgules de fin dans les schémas itérables Pris en charge Non pris en charge
    avec des objets Pris en charge Non pris en charge
    Déstructuration d’objets avec des éléments primitifs Pris en charge Non pris en charge
    Virgules de fin dans les schémas d’objet Pris en charge Non pris en charge
    Levées sur null et indéfini Pris en charge Non pris en charge
    Propriétés calculées Pris en charge Non pris en charge
    imbriqué Pris en charge Non pris en charge
    Interaction « Arguments » Pris en charge Non pris en charge
    nouvelle prise en charge de Function() Rejeté Rejeté
    Dans les paramètres, la propriété « longueur » de la fonction Pris en charge Non pris en charge
    se reposer Pris en charge Non pris en charge
    schémas vides Pris en charge Non pris en charge
    Par défaut Pris en charge Non pris en charge
    valeurs par défaut, champ d’application distinct Pris en charge Non pris en charge
    defaults, nouvelle prise en charge de Function() Rejeté Rejeté
    alias par défaut, fonction fléchée Pris en charge Non pris en charge
    raccourcis par défaut, fonction fléchée Pris en charge Non pris en charge
    Identificateur en double Rejeté Rejeté
    Tableau 58. Échappements de point de code Unicode
    Fonctionnalité Mode ECMAScript 2021 (ES12) Mode standard ES5
    dans les chaînes Pris en charge Non pris en charge
    dans Identificateurs Non pris en charge Non pris en charge
    dans les définitions de clé de propriété Non pris en charge Non pris en charge
    dans les accès à la clé de propriété Non pris en charge Non pris en charge
    Tableau 59. Nouvelle.cible
    Fonctionnalité Mode ECMAScript 2021 (ES12) Mode standard ES5
    dans les constructeurs Non pris en charge Non pris en charge
    L’affectation est une erreur précoce Rejeté Rejeté
    Tableau 60. Const
    Fonctionnalité Mode ECMAScript 2021 (ES12) Mode standard ES5
    Prise en charge de base Pris en charge Pris en charge
    Est bloc-champ d’application Pris en charge Non pris en charge
    Résolution de Shadow du périmètre Pris en charge Non pris en charge
    ne peut pas être dans les déclarations Rejeté Rejeté
    La redéfinition d’un const est une erreur Rejeté Rejeté
    pour le champ d’application de l’instruction de boucle Pris en charge Non pris en charge
    champ d’application de l’itération en boucle Pris en charge Non pris en charge
    champ d’application de l’itération de la boucle for of Pris en charge Non pris en charge
    zone morte temporelle Non pris en charge Non pris en charge
    Prise en charge de base (mode strict) Pris en charge Pris en charge
    Est limité par bloc (mode strict) Pris en charge Non pris en charge
    Champ d’application Résolution Shadow (mode strict) Pris en charge Non pris en charge
    Ne peut pas être dans les instructions (mode strict) Rejeté Rejeté
    Redéfinition d’un const (mode strict) Rejeté Rejeté
    pour le périmètre de l’instruction LOOP (mode strict) Pris en charge Non pris en charge
    Champ d’application de l’itération For-in Loop (mode strict) Pris en charge Non pris en charge
    champ d’application de l’itération de boucle For-OF (mode strict) Pris en charge Non pris en charge
    Zone morte temporelle (mode strict) Non pris en charge Non pris en charge
    Tableau 61. Laisser
    Fonctionnalité Mode ECMAScript 2021 (ES12) Mode standard ES5
    Prise en charge de base Pris en charge Non pris en charge
    Est bloc-champ d’application Pris en charge Non pris en charge
    Résolution de Shadow du périmètre Pris en charge Non pris en charge
    ne peut pas être dans les déclarations Rejeté Rejeté
    pour le champ d’application de l’instruction de boucle Pris en charge Non pris en charge
    zone morte temporelle Non pris en charge Non pris en charge
    champ d’application de l’itération for/for-in loop Pris en charge Non pris en charge
    paramètre d’ombrage de liaison en boucle Rejeté Rejeté
    Prise en charge de base (mode strict) Pris en charge Non pris en charge
    Est limité par bloc (mode strict) Pris en charge Non pris en charge
    Champ d’application Résolution Shadow (mode strict) Pris en charge Non pris en charge
    Ne peut pas être dans les instructions (mode strict) Rejeté Rejeté
    pour le périmètre de l’instruction LOOP (mode strict) Pris en charge Non pris en charge
    Zone morte temporelle (mode strict) Non pris en charge Non pris en charge
    Champ d’application d’itération for/for-in loop (mode strict) Pris en charge Non pris en charge
    paramètre d’ombrage de liaison en boucle (mode strict) Rejeté Rejeté
    Tableau 62. Déclaration de fonction au niveau du bloc
    Fonctionnalité Mode ECMAScript 2021 (ES12) Mode standard ES5
    Déclaration de fonction au niveau du bloc Pris en charge Non pris en charge
    Tableau 63. Fonctions fléchées
    Fonctionnalité Mode ECMAScript 2021 (ES12) Mode standard ES5
    0 paramètres Pris en charge Non pris en charge
    1 paramètre, pas de parenthèses Pris en charge Non pris en charge
    Paramètres multiples Pris en charge Non pris en charge
    Liaison lexicale « this » Pris en charge Non pris en charge
    « ceci » inchangé par appel ou appliquer Pris en charge Non pris en charge
    ne peut pas être lié, peut être curryé Pris en charge Non pris en charge
    Liaison des « arguments » lexicaux Pris en charge Non pris en charge
    Aucun saut de ligne entre les paramètres et => Rejeté Rejeté
    Priorité correcte Rejeté Rejeté
    pas de propriété « prototype » Non pris en charge Non pris en charge
    « Super » liaison lexicale dans les constructeurs Pris en charge Non pris en charge
    « super » liaison lexicale dans les méthodes Pris en charge Non pris en charge
    Liaison lexicale « new.target » Non pris en charge Non pris en charge
    Tableau 64. Classe
    Fonctionnalité Mode ECMAScript 2021 (ES12) Mode standard ES5
    Instruction de classe Pris en charge Non pris en charge
    Est bloc-champ d’application Pris en charge Non pris en charge
    Expression de classe Pris en charge Non pris en charge
    Classe anonyme Pris en charge Non pris en charge
    constructeur Pris en charge Non pris en charge
    Méthodes de prototypage Pris en charge Non pris en charge
    méthodes à clé de chaîne Pris en charge Non pris en charge
    méthodes de prototypes calculées Pris en charge Non pris en charge
    points-virgules facultatifs Pris en charge Non pris en charge
    Méthodes statiques Pris en charge Non pris en charge
    Méthodes statiques calculées Pris en charge Non pris en charge
    Propriétés de l’accesseur Pris en charge Non pris en charge
    Propriétés de l’accesseur calculées Pris en charge Non pris en charge
    Propriétés de l’accesseur statique Pris en charge Non pris en charge
    Propriétés de l’accesseur statique calculées Pris en charge Non pris en charge
    Le nom de classe est lexicalement limité au champ d’application Pris en charge Non pris en charge
    Noms calculés, zone morte temporelle Non pris en charge Non pris en charge
    Les méthodes ne sont pas énumérables Pris en charge Non pris en charge
    Mode strict implicite Non pris en charge Non pris en charge
    Le constructeur exige une nouvelle Pris en charge Non pris en charge
    étend Pris en charge Non pris en charge
    Étend les expressions Pris en charge Non pris en charge
    Étend la valeur null Pris en charge Non pris en charge
    nouvelle.cible Pris en charge Non pris en charge
    Tableau 65. Super
    Fonctionnalité Mode ECMAScript 2021 (ES12) Mode standard ES5
    Déclaration dans les constructeurs Pris en charge Non pris en charge
    Expression dans les constructeurs Pris en charge Non pris en charge
    dans les méthodes, l’accès à la propriété Pris en charge Non pris en charge
    dans les méthodes, les appels de méthode Pris en charge Non pris en charge
    Les appels de méthode utilisent la liaison correcte « this » Pris en charge Non pris en charge
    Les appels de constructeurs utilisent la liaison « new.target » correcte Pris en charge Non pris en charge
    est lié statiquement Pris en charge Non pris en charge
    super() invoque le constructeur correct Pris en charge Non pris en charge
    Tableau 66. Générateurs
    Fonctionnalité Mode ECMAScript 2021 (ES12) Mode standard ES5
    Fonctionnalité de base Rejeté Rejeté
    Expressions de la fonction du générateur Rejeté Rejeté
    corriger la liaison de « cette » Rejeté Rejeté
    impossible d’utiliser « ceci » avec de nouveaux Rejeté Rejeté
    envoi Rejeté Rejeté
    %GeneratorPrototype% Rejeté Rejeté
    Chaîne de prototypes %GeneratorPrototype% Rejeté Rejeté
    %GeneratorPrototype%.constructor Rejeté Rejeté
    %GeneratorPrototype%.throw Rejeté Rejeté
    %GeneratorPrototype%.return Rejeté Rejeté
    Cédez le passage à la priorité de l’opérateur Rejeté Rejeté
    rendement *, tableaux Rejeté Rejeté
    rendement*, tableaux clairsemés Rejeté Rejeté
    rendement *, chaînes Rejeté Rejeté
    yield*, cordes du plan astral Rejeté Rejeté
    rendement*, instances de générateur Rejeté Rejeté
    rendement *, itérables génériques Rejeté Rejeté
    rendement*, instances d’itérables Rejeté Rejeté
    rendement * sur les non-itérables est une erreur d’exécution Rejeté Rejeté
    rendement *, fermeture de l’itérateur Rejeté Rejeté
    yield *, fermeture de l’itérateur via throw() Rejeté Rejeté
    méthodes de génération abrégée Rejeté Rejeté
    Méthodes de génération abrégée à clé de chaîne Rejeté Rejeté
    Générateurs abrégés calculés Rejeté Rejeté
    Méthodes de génération de raccourcis, classes Rejeté Rejeté
    Générateurs abrégés calculés, classes Rejeté Rejeté
    Les générateurs abrégés ne peuvent pas être des constructeurs Rejeté Rejeté
    Tableau 67. Tableaux typés
    Fonctionnalité Mode ECMAScript 2021 (ES12) Mode standard ES5
    Tableau Int8Array Rejeté Rejeté
    Uint8Array Rejeté Rejeté
    Uint8ClampedArray Rejeté Rejeté
    Int16Array Rejeté Rejeté
    Uint16Array Rejeté Rejeté
    Tableau Int32 Rejeté Rejeté
    uint32Array Rejeté Rejeté
    Tableau flottant32 Rejeté Rejeté
    Float64Array Rejeté Rejeté
    Vue des données (Int8) Rejeté Rejeté
    Vue des données (uint8) Rejeté Rejeté
    Vue des données (Int16) Rejeté Rejeté
    Vue des données (uint16) Rejeté Rejeté
    Vue des données (int32) Rejeté Rejeté
    Vue des données (uint32) Rejeté Rejeté
    Vue des données (Float32) Rejeté Rejeté
    Vue des données (Float64) Rejeté Rejeté
    ArrayBuffer[Symbol.species] Rejeté Rejeté
    les constructeurs exigent de nouveaux Rejeté Rejeté
    Les constructeurs acceptent les itérables génériques Rejeté Rejeté
    Chaînes de prototypes correctes Rejeté Rejeté
    %TypedArray%.from Rejeté Rejeté
    %TypedArray%.of Rejeté Rejeté
    %TypedArray%.prototype.subarray Rejeté Rejeté
    %TypedArray%.prototype.join Rejeté Rejeté
    %TypedArray%.prototype.indexOf Rejeté Rejeté
    %TypedArray%.prototype.lastIndexOf Rejeté Rejeté
    %TypedArray%.prototype.slice Rejeté Rejeté
    %TypedArray%.prototype.every Rejeté Rejeté
    %TypedArray%.prototype.filter Rejeté Rejeté
    %TypedArray%.prototype.forEach Rejeté Rejeté
    %TypedArray%.prototype.map Rejeté Rejeté
    %TypedArray%.prototype.reduce Rejeté Rejeté
    %TypedArray%.prototype.reduceRight Rejeté Rejeté
    %TypedArray%.prototype.reverse Rejeté Rejeté
    %TypedArray%.prototype.some Rejeté Rejeté
    %TypedArray%.prototype.sort Rejeté Rejeté
    %TypedArray%.prototype.copyWithin Rejeté Rejeté
    %TypedArray%.prototype.find Rejeté Rejeté
    %TypedArray%.prototype.findIndex Rejeté Rejeté
    %TypedArray%.prototype.fill Rejeté Rejeté
    %TypedArray%.prototype.keys Rejeté Rejeté
    %TypedArray%.prototype.values Rejeté Rejeté
    %TypedArray%.prototype.entries Rejeté Rejeté
    %TypedArray%.prototype[Symbol.iterator] Rejeté Rejeté
    %TypedArray%[Symbol.species] Rejeté Rejeté
    Tableau 68. Carte
    Fonctionnalité Mode ECMAScript 2021 (ES12) Mode standard ES5
    Fonctionnalité de base Pris en charge Non pris en charge
    Arguments du constructeur Pris en charge Non pris en charge
    Le constructeur exige une nouvelle Pris en charge Non pris en charge
    Le constructeur accepte la valeur null Pris en charge Non pris en charge
    Le constructeur invoque l’ensemble Pris en charge Non pris en charge
    fermeture de l’itérateur Pris en charge Non pris en charge
    Map.prototype.set renvoie ceci Pris en charge Non pris en charge
    La touche -0 se convertit en +0 Pris en charge Non pris en charge
    Carte.prototype.taille Pris en charge Non pris en charge
    Map.prototype.delete Pris en charge Non pris en charge
    Map.prototype.clear Pris en charge Non pris en charge
    Map.prototype.forEach Pris en charge Non pris en charge
    Map.prototype.keys Pris en charge Non pris en charge
    Map.prototype.valeurs Pris en charge Non pris en charge
    Map.prototype.entrées Pris en charge Non pris en charge
    Map.prototype[Symbol.iterator] Pris en charge Non pris en charge
    Map.prototype n’est pas une instance Pris en charge Non pris en charge
    Chaîne de prototypes d’itérateurs de carte Pris en charge Non pris en charge
    Carte[Symbole.espèce] Pris en charge Non pris en charge
    Tableau 69. Ensemble
    Fonctionnalité Mode ECMAScript 2021 (ES12) Mode standard ES5
    Fonctionnalité de base Pris en charge Non pris en charge
    Arguments du constructeur Pris en charge Non pris en charge
    Le constructeur exige une nouvelle Pris en charge Non pris en charge
    Le constructeur accepte la valeur null Pris en charge Non pris en charge
    Le constructeur invoque Ajouter Pris en charge Non pris en charge
    fermeture de l’itérateur Pris en charge Non pris en charge
    Set.prototype.add retourne ceci Pris en charge Non pris en charge
    La touche -0 se convertit en +0 Pris en charge Non pris en charge
    Ensemble.prototype.taille Pris en charge Non pris en charge
    Ensemble.prototype.supprimer Pris en charge Non pris en charge
    Ensemble.prototype.effacer Pris en charge Non pris en charge
    Ensemble.prototype.pourEach Pris en charge Non pris en charge
    Set.prototype.keys Pris en charge Non pris en charge
    Set.prototype.values Pris en charge Non pris en charge
    Ensemble.prototype.entrées Pris en charge Non pris en charge
    Ensemble.prototype[Symbol.iterator] Pris en charge Non pris en charge
    Set.prototype n’est pas une instance Pris en charge Non pris en charge
    Définir la chaîne du prototype de l’itérateur Pris en charge Non pris en charge
    Ensemble[Symbole.espèce] Pris en charge Non pris en charge
    Tableau 70. Carte faible
    Fonctionnalité Mode ECMAScript 2021 (ES12) Mode standard ES5
    Fonctionnalité de base Rejeté Rejeté
    Arguments du constructeur Rejeté Rejeté
    Le constructeur exige une nouvelle Rejeté Rejeté
    Le constructeur accepte la valeur null Rejeté Rejeté
    Le constructeur invoque l’ensemble Rejeté Rejeté
    Objets gelés comme clés Rejeté Rejeté
    fermeture de l’itérateur Rejeté Rejeté
    WeakMap.prototype.set renvoie ceci Rejeté Rejeté
    Carte faible.prototype.supprimer Rejeté Rejeté
    pas de méthode WeakMap.prototype.clear Rejeté Rejeté
    Les méthodes .has, .get et .delete acceptent les primitives Rejeté Rejeté
    WeakMap.prototype n’est pas une instance Rejeté Rejeté
    Tableau 71. WeakSet
    Fonctionnalité Mode ECMAScript 2021 (ES12) Mode standard ES5
    Fonctionnalité de base Rejeté Rejeté
    Arguments du constructeur Rejeté Rejeté
    Le constructeur exige une nouvelle Rejeté Rejeté
    Le constructeur accepte la valeur null Rejeté Rejeté
    Le constructeur invoque Ajouter Rejeté Rejeté
    fermeture de l’itérateur Rejeté Rejeté
    WeakSet.prototype.add retourne ceci Rejeté Rejeté
    WeakSet.prototype.delete Rejeté Rejeté
    pas de méthode WeakSet.prototype.clear Rejeté Rejeté
    Les méthodes .has et .delete acceptent les primitives Rejeté Rejeté
    WeakSet.prototype n’est pas une instance Rejeté Rejeté
    Tableau 72. Proxy
    Fonctionnalité Mode ECMAScript 2021 (ES12) Mode standard ES5
    Le constructeur exige une nouvelle Rejeté Rejeté
    pas de propriété « prototype » Rejeté Rejeté
    Gestionnaire « get » Rejeté Rejeté
    « get », instances de proxys Rejeté Rejeté
    Invariants du gestionnaire « get » Rejeté Rejeté
    Gestionnaire « set » Rejeté Rejeté
    gestionnaire « set », instances de proxys Rejeté Rejeté
    invariants du gestionnaire « set » Rejeté Rejeté
    Gestionnaire « a » Rejeté Rejeté
    gestionnaire « has », instances de proxys Rejeté Rejeté
    Invariants du gestionnaire « has » Rejeté Rejeté
    Gestionnaire « deleteProperty » Rejeté Rejeté
    Invariant du gestionnaire « deleteProperty » Rejeté Rejeté
    Gestionnaire « getOwnPropertyDescriptor » Rejeté Rejeté
    Invariants du gestionnaire « getOwnPropertyDescriptor » Rejeté Rejeté
    Gestionnaire « defineProperty » Rejeté Rejeté
    Invariants du gestionnaire « defineProperty » Rejeté Rejeté
    Gestionnaire « getPrototypeOf » Rejeté Rejeté
    Invariant du gestionnaire « getPrototypeOf » Rejeté Rejeté
    Gestionnaire « setPrototypeOf » Rejeté Rejeté
    Invariant du gestionnaire « setPrototypeOf » Rejeté Rejeté
    Gestionnaire « isExtensible » Rejeté Rejeté
    Invariant du gestionnaire « isExtensible » Rejeté Rejeté
    Gestionnaire « preventExtensions » Rejeté Rejeté
    invariant du gestionnaire « preventExtensions » Rejeté Rejeté
    Gestionnaire « ownKeys » Rejeté Rejeté
    Invariant du gestionnaire « ownKeys » Rejeté Rejeté
    Gestionnaire « appliquer » Rejeté Rejeté
    Invariant du gestionnaire « appliquer » Rejeté Rejeté
    Gestionnaire « construire » Rejeté Rejeté
    Invariants du gestionnaire « construire » Rejeté Rejeté
    Proxy.révocable Rejeté Rejeté
    Prise en charge d’Array.isArray Rejeté Rejeté
    Prise en charge de JSON.stringify Rejeté Rejeté
    Tableau 73. Réfléchir
    Fonctionnalité Mode ECMAScript 2021 (ES12) Mode standard ES5
    Réfléchir.obtenir Rejeté Rejeté
    Reflect.set Rejeté Rejeté
    Reflect.has Rejeté Rejeté
    Refléter.deleteProperty Rejeté Rejeté
    Refléter.getOwnPropertyDescriptor Rejeté Rejeté
    Reflect.defineProperty Rejeté Rejeté
    Refléter.getPrototypeOf Rejeté Rejeté
    Reflect.setPrototypeOf Rejeté Rejeté
    Reflect.isExtensible Rejeté Rejeté
    Reflect.preventExtensions Rejeté Rejeté
    Reflect.ownKeys, clés de chaîne Rejeté Rejeté
    Reflect.ownKeys, touches de symbole Rejeté Rejeté
    Réfléchir.appliquer Rejeté Rejeté
    Réfléchir.construire Rejeté Rejeté
    Reflect.construct définit la métapropriété new.target Rejeté Rejeté
    Reflect.construct crée des instances à partir du troisième argument Rejeté Rejeté
    Reflect.construct, sous-classe de tableau Rejeté Rejeté
    Reflect.construct, sous-classe RegExp Rejeté Rejeté
    Reflect.construct, sous-classe de fonction Rejeté Rejeté
    Reflect.construct, sous-classe de promesse Rejeté Rejeté
    Tableau 74. Promesse
    Fonctionnalité Mode ECMAScript 2021 (ES12) Mode standard ES5
    Fonctionnalité de base Rejeté Rejeté
    Le constructeur exige une nouvelle Rejeté Rejeté
    Promise.prototype n’est pas une instance Rejeté Rejeté
    Promettre.Tout Rejeté Rejeté
    Promise.all, itérables génériques Rejeté Rejeté
    Promesse.race Rejeté Rejeté
    Promise.race, itérables génériques Rejeté Rejeté
    Promesse[Symbole.espèce] Rejeté Rejeté
    Tableau 75. Symbole
    Fonctionnalité Mode ECMAScript 2021 (ES12) Mode standard ES5
    Fonctionnalité de base Pris en charge Non pris en charge
    Type de support Pris en charge Non pris en charge
    Les clés de symbole sont masquées dans le code pré-ES6 Pris en charge Non pris en charge
    Prise en charge d’Object.defineProperty Pris en charge Non pris en charge
    symboles héritent de Symbol.prototype Pris en charge Non pris en charge
    Impossible de contraindre à une chaîne ou à un numéro Non pris en charge Non pris en charge
    peut convertir avec String() Non pris en charge Non pris en charge
    nouvelles levées de Symbol() Pris en charge Non pris en charge
    Objet (symbole) Non pris en charge Non pris en charge
    JSON.stringify ignore les symboles primitifs Pris en charge Non pris en charge
    JSON.stringify ignore les objets symbole Non pris en charge Non pris en charge
    Registre mondial des symboles Pris en charge Non pris en charge
    Tableau 76. Symboles connus
    Fonctionnalité Mode ECMAScript 2021 (ES12) Mode standard ES5
    Symbole.aInstance Rejeté Rejeté
    Symbol.isConcatSpreadable Rejeté Rejeté
    Symbol.iterator, existence Rejeté Rejeté
    Symbol.iterator, objet d’arguments Rejeté Rejeté
    Symbole.espèce, existence Rejeté Rejeté
    Symbol.species, Array.prototype.concat Rejeté Rejeté
    Symbol.species, Array.prototype.filter Rejeté Rejeté
    Symbol.species, Array.prototype.map Rejeté Rejeté
    Symbole.espèce, Tableau.prototype.tranche Rejeté Rejeté
    Symbole.espèce, Tableau.prototype.épissure Rejeté Rejeté
    Symbol.species, RegExp.prototype[Symbol.split] Rejeté Rejeté
    Symbole.espèce, Promesse.prototype.puis Rejeté Rejeté
    Symbole.remplacer Rejeté Rejeté
    Symbole.recherche Rejeté Rejeté
    Symbol.split Rejeté Rejeté
    Symbol.match Rejeté Rejeté
    Symbol.match, constructeur RegExp Rejeté Rejeté
    Symbol.match, String.prototype.startsWith Rejeté Rejeté
    Symbol.match, String.prototype.endsWith Rejeté Rejeté
    Symbol.match, String.prototype.includes Rejeté Rejeté
    Symbole.àPrimitif Rejeté Rejeté
    Balise.symbole.chaîne. Rejeté Rejeté
    Symbol.toStringTag affecte les fonctions intégrées existantes Rejeté Rejeté
    Symbol.toStringTag, nouveaux éléments intégrés Rejeté Rejeté
    Symbol.toStringTag, divers intégrés Rejeté Rejeté
    Symbol.unscopables Rejeté Rejeté
    Tableau 77. Méthodes statiques des objets
    Fonctionnalité Mode ECMAScript 2021 (ES12) Mode standard ES5
    Objet.affecter Pris en charge Non pris en charge
    Object.is Pris en charge Non pris en charge
    Objet.getOwnPropertySymbols Pris en charge Non pris en charge
    Objet.setPrototypeOf Non pris en charge Non pris en charge
    Tableau 78. Propriété « nom » de la fonction
    Fonctionnalité Mode ECMAScript 2021 (ES12) Mode standard ES5
    Instructions de fonction Pris en charge Pris en charge
    Expressions de fonction Pris en charge Pris en charge
    nouvelle fonction Non pris en charge Non pris en charge
    Fonctions liées Non pris en charge Non pris en charge
    Variables (fonction) Pris en charge Non pris en charge
    Méthodes d’objet (fonction) Pris en charge Non pris en charge
    Propriétés de l’accesseur Non pris en charge Non pris en charge
    méthodes abrégées Pris en charge Non pris en charge
    méthodes abrégées (pas de liaison lexicale) Pris en charge Non pris en charge
    méthodes à clé de symbole Non pris en charge Non pris en charge
    Instructions de classe Pris en charge Non pris en charge
    Expressions de classe Pris en charge Non pris en charge
    Variables (classe) Pris en charge Non pris en charge
    Méthodes d’objet (classe) Non pris en charge Non pris en charge
    Méthodes de prototypes de classes Pris en charge Non pris en charge
    Méthodes statiques de classes Pris en charge Non pris en charge
    n’est pas accessible en écriture, il est configurable Non pris en charge Non pris en charge
    Tableau 79. Méthodes statiques de chaîne
    Fonctionnalité Mode ECMAScript 2021 (ES12) Mode standard ES5
    String.raw Pris en charge Non pris en charge
    Chaîne.fromCodePoint Pris en charge Non pris en charge
    Tableau 80. Méthodes String.prototype
    Fonctionnalité Mode ECMAScript 2021 (ES12) Mode standard ES5
    Chaîne.prototype.codePointAt Pris en charge Pris en charge
    Chaîne.prototype.normaliser Pris en charge Pris en charge
    Chaîne.prototype.répétition Pris en charge Pris en charge
    Chaîne.prototype.startsWith Pris en charge Pris en charge
    String.prototype.startsWith lance sur RegExp Non pris en charge Non pris en charge
    Chaîne.prototype.endsWith Pris en charge Pris en charge
    String.prototype.endsWith throws sur RegExp Non pris en charge Non pris en charge
    Chaîne.prototype.includes Pris en charge Pris en charge
    Chaîne.prototype[Symbol.iterator] Pris en charge Non pris en charge
    Chaîne de prototypes d’itérateurs de chaîne Pris en charge Non pris en charge
    Tableau 81. Propriétés RegExp.prototype
    Fonctionnalité Mode ECMAScript 2021 (ES12) Mode standard ES5
    RegExp.prototype.flags Pris en charge Non pris en charge
    RegExp.prototype[Symbol.match] Non pris en charge Non pris en charge
    RegExp.prototype[Symbole.remplacer] Pris en charge Non pris en charge
    RegExp.prototype[Symbol.split] Pris en charge Non pris en charge
    RegExp.prototype[Symbol.search] Non pris en charge Non pris en charge
    RegExp[Symbol.species] Pris en charge Non pris en charge
    Tableau 82. Méthodes statiques des tableaux
    Fonctionnalité Mode ECMAScript 2021 (ES12) Mode standard ES5
    Array.from, objets de type tableau Pris en charge Non pris en charge
    Array.from, instances de générateur Rejeté Rejeté
    Array.from, itérables génériques Pris en charge Non pris en charge
    Array.from, instances d’itérables génériques Pris en charge Non pris en charge
    Array.à partir de la fonction de carte, objets de type tableau Pris en charge Non pris en charge
    Fonction de carte Array.from, instances de générateur Rejeté Rejeté
    Array.from fonction de carte, itérables génériques Pris en charge Non pris en charge
    Fonction de carte Array.from, instances d’itérables Pris en charge Non pris en charge
    Array.from, fermeture de l’itérateur Pris en charge Non pris en charge
    Tableau.de Pris en charge Non pris en charge
    Tableau[Symbol.species] Pris en charge Non pris en charge
    Tableau 83. Méthodes Array.prototype
    Fonctionnalité Mode ECMAScript 2021 (ES12) Mode standard ES5
    Array.prototype.copyWithin Pris en charge Non pris en charge
    Tableau.prototype.trouver Pris en charge Non pris en charge
    Tableau.prototype.findIndex Pris en charge Non pris en charge
    Tableau.prototype.remplissage Pris en charge Non pris en charge
    Array.prototype.keys Pris en charge Non pris en charge
    Tableau.prototype.valeurs Pris en charge Non pris en charge
    Array.prototype.entrées Pris en charge Non pris en charge
    Tableau.prototype[Symbol.iterator] Pris en charge Non pris en charge
    Chaîne de prototypes d’itérateurs de tableau Pris en charge Non pris en charge
    Array.prototype[Symbol.unscopables] Pris en charge Non pris en charge
    Tableau 84. Propriétés du nombre
    Fonctionnalité Mode ECMAScript 2021 (ES12) Mode standard ES5
    Nombre.isFinite Pris en charge Non pris en charge
    Nombre.isEntier Pris en charge Non pris en charge
    Nombre.isSafeInteger Pris en charge Non pris en charge
    Nombre.isNaN Pris en charge Non pris en charge
    Nombre.parseFloat Rejeté Rejeté
    Numéro.analyseInt Rejeté Rejeté
    Numéro.EPSILON Pris en charge Non pris en charge
    Number.MIN_SAFE_INTEGER Pris en charge Non pris en charge
    Number.MAX_ENTIER_SAFe Pris en charge Non pris en charge
    Tableau 85. Méthodes mathématiques
    Fonctionnalité Mode ECMAScript 2021 (ES12) Mode standard ES5
    Math.clz32 Pris en charge Non pris en charge
    Math.imul Pris en charge Non pris en charge
    Math.sign Pris en charge Non pris en charge
    Mathématiques.log10 Pris en charge Non pris en charge
    Mathématiques.log2 Pris en charge Non pris en charge
    Math.log1p Pris en charge Non pris en charge
    Math.expm1 Pris en charge Non pris en charge
    Math.cosh Pris en charge Non pris en charge
    Math.sinh Pris en charge Non pris en charge
    Math.tanh Pris en charge Non pris en charge
    Math.acosh Pris en charge Non pris en charge
    Math.asinh Pris en charge Non pris en charge
    Math.atanh Pris en charge Non pris en charge
    Math.trunc Pris en charge Non pris en charge
    Math.fround Pris en charge Non pris en charge
    Math.cbrt Pris en charge Non pris en charge
    Math.hypot Pris en charge Non pris en charge
    Tableau 86. Date.prototype[Symbole.àPrimitive]
    Fonctionnalité Mode ECMAScript 2021 (ES12) Mode standard ES5
    Date.prototype[Symbole.àPrimitive] Pris en charge Non pris en charge
    Tableau 87. Le tableau peut être sous-classé
    Fonctionnalité Mode ECMAScript 2021 (ES12) Mode standard ES5
    Propriété de longueur (accès) Rejeté Rejeté
    Propriété de longueur (paramètre) Rejeté Rejeté
    chaîne de prototype correcte Rejeté Rejeté
    Prise en charge d’Array.isArray Rejeté Rejeté
    Tableau.prototype.concaténé Rejeté Rejeté
    Tableau.prototype.filtre Rejeté Rejeté
    Array.prototype.map Rejeté Rejeté
    Tableau.prototype.tranche Rejeté Rejeté
    Tableau.prototype.épissure Rejeté Rejeté
    Tableau.de Rejeté Rejeté
    Tableau.de Rejeté Rejeté
    Tableau 88. RegExp est sous-classable
    Fonctionnalité Mode ECMAScript 2021 (ES12) Mode standard ES5
    Fonctionnalité de base Rejeté Rejeté
    chaîne de prototype correcte Rejeté Rejeté
    RegExp.prototype.exec Rejeté Rejeté
    RegExp.prototype.test Rejeté Rejeté
    Tableau 89. La fonction est sous-classable
    Fonctionnalité Mode ECMAScript 2021 (ES12) Mode standard ES5
    peut être appelé Rejeté Rejeté
    chaîne de prototype correcte Rejeté Rejeté
    Peut être utilisé avec « nouveau » Rejeté Rejeté
    Function.prototype.call Rejeté Rejeté
    Fonction.prototype.appliquer Rejeté Rejeté
    Fonction.prototype.liaison Rejeté Rejeté
    Tableau 90. La promesse est sous-classable
    Fonctionnalité Mode ECMAScript 2021 (ES12) Mode standard ES5
    Fonctionnalité de base Rejeté Rejeté
    chaîne de prototype correcte Rejeté Rejeté
    Promettre.Tout Rejeté Rejeté
    Promesse.race Rejeté Rejeté
    Tableau 91. Sous-classables divers
    Fonctionnalité Mode ECMAScript 2021 (ES12) Mode standard ES5
    Le booléen est sous-classable Rejeté Rejeté
    Le nombre est sous-classable Rejeté Rejeté
    La chaîne peut être sous-classée Rejeté Rejeté
    L’erreur est sous-classable Rejeté Rejeté
    La carte est sous-classable Rejeté Rejeté
    L’ensemble est sous-classable Rejeté Rejeté
    Tableau 92. Prototype des fonctions liées
    Fonctionnalité Mode ECMAScript 2021 (ES12) Mode standard ES5
    Fonctions de base Rejeté Rejeté
    Fonctions du générateur Rejeté Rejeté
    Fonctions fléchées Rejeté Rejeté
    Classes Rejeté Rejeté
    Sous-classes Rejeté Rejeté
    Tableau 93. Proxy, appels internes « get »
    Fonctionnalité Mode ECMAScript 2021 (ES12) Mode standard ES5
    ToPrimitive Rejeté Rejeté
    CreateListFromArrayLike Rejeté Rejeté
    instanced’opérateur Pris en charge Rejeté
    HasBinding Rejeté Rejeté
    CreateDynamicFunction Rejeté Rejeté
    ClassDefinitionEvaluation Rejeté Rejeté
    IteratorComplete, IteratorValue Rejeté Rejeté
    ToPropertyDescriptor Rejeté Rejeté
    Objet.affecter Rejeté Rejeté
    Objet.defineProperties Rejeté Rejeté
    Fonction.prototype.liaison Rejeté Rejeté
    Erreur.prototype.àChaîne Rejeté Rejeté
    String.raw Rejeté Rejeté
    Constructeur RegExp Rejeté Rejeté
    RegExp.prototype.flags Rejeté Rejeté
    RegExp.prototype.test Rejeté Rejeté
    RegExp.prototype.toString Rejeté Rejeté
    RegExp.prototype[Symbol.match] Rejeté Rejeté
    RegExp.prototype[Symbole.remplacer] Rejeté Rejeté
    RegExp.prototype[Symbol.search] Rejeté Rejeté
    RegExp.prototype[Symbol.split] Rejeté Rejeté
    Tableau.de Rejeté Rejeté
    Tableau.prototype.concaténé Rejeté Rejeté
    Méthodes d’itération Array.prototype Rejeté Rejeté
    Tableau.prototype.pop Rejeté Rejeté
    Tableau.prototype.reverse Rejeté Rejeté
    Tableau.prototype.décalage Rejeté Rejeté
    Tableau.prototype.épissure Rejeté Rejeté
    Tableau.prototype.àChaîne Rejeté Rejeté
    JSON.stringify Rejeté Rejeté
    Fonctions de résolution de promesse Rejeté Rejeté
    Chaîne.prototype.match Rejeté Rejeté
    Chaîne.prototype.remplacer Rejeté Rejeté
    String.prototype.search Rejeté Rejeté
    Chaîne.prototype.split Rejeté Rejeté
    Date.prototype.àJSON Rejeté Rejeté
    Tableau 94. Proxy, appels internes « set »
    Fonctionnalité Mode ECMAScript 2021 (ES12) Mode standard ES5
    Objet.affecter Rejeté Rejeté
    Tableau.de Rejeté Rejeté
    Tableau.de Rejeté Rejeté
    Array.prototype.copyWithin Rejeté Rejeté
    Tableau.prototype.remplissage Rejeté Rejeté
    Tableau.prototype.pop Rejeté Rejeté
    Tableau.prototype.push Rejeté Rejeté
    Tableau.prototype.reverse Rejeté Rejeté
    Tableau.prototype.décalage Rejeté Rejeté
    Tableau.prototype.épissure Rejeté Rejeté
    Tableau.prototype.annuler l’équipe Rejeté Rejeté
    Tableau 95. Proxy, appels internes « defineProperty »
    Fonctionnalité Mode ECMAScript 2021 (ES12) Mode standard ES5
    [[Ensemble]] Rejeté Rejeté
    SetIntegrityLevel Rejeté Rejeté
    Tableau 96. Proxy, appels internes 'deleteProperty'
    Fonctionnalité Mode ECMAScript 2021 (ES12) Mode standard ES5
    Array.prototype.copyWithin Rejeté Rejeté
    Tableau.prototype.pop Rejeté Rejeté
    Tableau.prototype.reverse Rejeté Rejeté
    Tableau.prototype.décalage Rejeté Rejeté
    Tableau.prototype.épissure Rejeté Rejeté
    Tableau.prototype.annuler l’équipe Rejeté Rejeté
    Tableau 97. Proxy, appels internes 'getOwnPropertyDescriptor'
    Fonctionnalité Mode ECMAScript 2021 (ES12) Mode standard ES5
    [[Ensemble]] Rejeté Rejeté
    Objet.affecter Rejeté Rejeté
    Objet.prototype.hasOwnProperty Rejeté Rejeté
    Fonction.prototype.liaison Rejeté Rejeté
    Tableau 98. Proxy, appels internes « ownKeys »
    Fonctionnalité Mode ECMAScript 2021 (ES12) Mode standard ES5
    SetIntegrityLevel Rejeté Rejeté
    Niveau d’intégrité de test Rejeté Rejeté
    SérializeJSONObject Rejeté Rejeté
    Tableau 99. Les méthodes statiques des objets acceptent les éléments primitifs
    Fonctionnalité Mode ECMAScript 2021 (ES12) Mode standard ES5
    Objet.getPrototypeOf Rejeté Rejeté
    Objet.getOwnPropertyDescriptor Rejeté Rejeté
    Noms des objets.getOwnPropertyNames Rejeté Rejeté
    Objet.sceau Rejeté Rejeté
    Gel.objet Rejeté Rejeté
    Objet.preventExtensions Rejeté Rejeté
    Objet.isSealed Rejeté Rejeté
    Objet.isFrozen Rejeté Rejeté
    Objet.isExtensible Rejeté Rejeté
    Objets.clés Rejeté Rejeté
    Tableau 100. Propre ordre de propriété
    Fonctionnalité Mode ECMAScript 2021 (ES12) Mode standard ES5
    Objets.clés Rejeté Rejeté
    Noms des objets.getOwnPropertyNames Rejeté Rejeté
    Objet.affecter Rejeté Rejeté
    JSON.stringify Rejeté Rejeté
    JSON.analyser Rejeté Rejeté
    Reflect.ownKeys, ordre des clés de chaîne Rejeté Rejeté
    Reflect.ownKeys, ordre des clés de symbole Rejeté Rejeté
    Tableau 101. Syntaxe de l’identificateur mise à jour
    Fonctionnalité Mode ECMAScript 2021 (ES12) Mode standard ES5
    var â ̧ ̄ ; Rejeté Rejeté
    var ð ‹€ ; Rejeté Rejeté
    Aucun mot réservé avec échappement en tant qu’identificateurs Rejeté Rejeté
    Tableau 102. Sémantique de fonction non stricte
    Fonctionnalité Mode ECMAScript 2021 (ES12) Mode standard ES5
    Déclaration de fonction au niveau du bloc hissée Rejeté Rejeté
    Déclarations de fonction étiquetées Rejeté Rejeté
    instructions de fonction dans les clauses if-statement Rejeté Rejeté
    Tableau 103. __proto__ dans les littéraux d’objet
    Fonctionnalité Mode ECMAScript 2021 (ES12) Mode standard ES5
    Prise en charge de base Rejeté Rejeté
    Plusieurs __proto__ est une erreur Rejeté Rejeté
    n’est pas une propriété calculée Rejeté Rejeté
    pas une propriété abrégée Rejeté Rejeté
    pas une méthode abrégée Rejeté Rejeté
    Tableau 104. Object.prototype.__proto__
    Fonctionnalité Mode ECMAScript 2021 (ES12) Mode standard ES5
    Obtenir un prototype Rejeté Rejeté
    Définir le prototype Rejeté Rejeté
    absent de Object.create(null) Rejeté Rejeté
    présent dans hasOwnProperty() Rejeté Rejeté
    Descripteur de propriété correct Rejeté Rejeté
    présent dans Object.getOwnPropertyNames() Rejeté Rejeté
    Tableau 105. Méthodes HTML String.prototype
    Fonctionnalité Mode ECMAScript 2021 (ES12) Mode standard ES5
    existence Rejeté Rejeté
    Les noms des balises sont en minuscules Rejeté Rejeté
    les guillemets dans les arguments sont échappés Rejeté Rejeté
    Tableau 106. RegExp.prototype.compile
    Fonctionnalité Mode ECMAScript 2021 (ES12) Mode standard ES5
    Fonctionnalité de base Rejeté Rejeté
    Renvoie ceci Rejeté Rejeté
    Tableau 107. Extensions de syntaxe RegExp
    Fonctionnalité Mode ECMAScript 2021 (ES12) Mode standard ES5
    Traits d’union dans les jeux de caractères Rejeté Rejeté
    caractères d’échappement non valides Rejeté Rejeté
    caractères d’échappement de caractère de contrôle non valides Rejeté Rejeté
    Échappements Unicode non valides Rejeté Rejeté
    Caractères d’échappement hexadécimaux non valides Rejeté Rejeté
    Modèles et quantificateurs incomplets Rejeté Rejeté
    Séquences d’échappement octales Rejeté Rejeté
    Les références arrière non valides deviennent des échappements octals Rejeté Rejeté

    Caractéristiques d’ECMAScript 2009 (ES5)

    Tableau 108. Extensions littérales d’objets/tableaux
    Fonctionnalité Mode ECMAScript 2021 (ES12) Mode standard ES5
    Accesseurs Getter Pris en charge Pris en charge
    Accesseurs Setter Pris en charge Pris en charge
    Virgules de fin dans les littéraux d’objet Pris en charge Pris en charge
    Virgules de fin dans les littéraux de tableau Pris en charge Pris en charge
    Mots réservés en tant que noms de propriétés Pris en charge Pris en charge
    Tableau 109. Méthodes statiques des objets
    Fonctionnalité Mode ECMAScript 2021 (ES12) Mode standard ES5
    Objet.créer Pris en charge Pris en charge
    Objet.defineProperty Pris en charge Pris en charge
    Objet.defineProperties Pris en charge Pris en charge
    Objet.getPrototypeOf Pris en charge Pris en charge
    Objets.clés Pris en charge Pris en charge
    Objet.sceau Pris en charge Pris en charge
    Gel.objet Pris en charge Pris en charge
    Objet.preventExtensions Pris en charge Pris en charge
    Objet.isSealed Pris en charge Pris en charge
    Objet.isFrozen Pris en charge Pris en charge
    Objet.isExtensible Pris en charge Pris en charge
    Objet.getOwnPropertyDescriptor Pris en charge Pris en charge
    Noms des objets.getOwnPropertyNames Pris en charge Pris en charge
    Tableau 110. Méthodes de tableau
    Fonctionnalité Mode ECMAScript 2021 (ES12) Mode standard ES5
    Tableau.isArray Pris en charge Pris en charge
    Tableau.prototype.indexOf Pris en charge Pris en charge
    Tableau.prototype.lastIndexOf Pris en charge Pris en charge
    Tableau.prototype.chaque Pris en charge Pris en charge
    Tableau.prototype.some Pris en charge Pris en charge
    Tableau.prototype.pourEach Pris en charge Pris en charge
    Tableau.prototype.carte Pris en charge Pris en charge
    Tableau.prototype.filtre Pris en charge Pris en charge
    Tableau.prototype.reduce Pris en charge Pris en charge
    Tableau.prototype.réduireà droite Pris en charge Pris en charge
    Array.prototype.sort : compareFn doit être fonction ou non défini Non pris en charge Non pris en charge
    Array.prototype.sort : compareFn peut être explicite non défini Pris en charge Pris en charge
    Tableau 111. Propriétés et méthodes des chaînes
    Fonctionnalité Mode ECMAScript 2021 (ES12) Mode standard ES5
    Accès à la propriété sur les chaînes Pris en charge Pris en charge
    Chaîne.prototype.split Pris en charge Non pris en charge
    Chaîne.prototype.garniture Pris en charge Pris en charge
    Tableau 112. Méthodes de dates
    Fonctionnalité Mode ECMAScript 2021 (ES12) Mode standard ES5
    Date.prototype.àISOString Pris en charge Pris en charge
    Date.maintenant Pris en charge Pris en charge
    Date.prototype.àJSON Non pris en charge Non pris en charge
    Tableau 113. Globales immuables
    Fonctionnalité Mode ECMAScript 2021 (ES12) Mode standard ES5
    non défini Pris en charge Pris en charge
    Nan Pris en charge Pris en charge
    Infini Pris en charge Pris en charge
    Tableau 114. Méthodes de numérotation
    Fonctionnalité Mode ECMAScript 2021 (ES12) Mode standard ES5
    Numéro.prototype.àExponentiel s’arrondit correctement Pris en charge Pris en charge
    Nombre.prototype.àExponentiel jette sur ±Infinity fractionDigits Pris en charge Pris en charge
    Number.prototype.toExponential ne lance pas de tickets limites Pris en charge Pris en charge
    Tableau 115. Mode strict
    Fonctionnalité Mode ECMAScript 2021 (ES12) Mode standard ES5
    Mots réservés Rejeté Rejeté
    « ceci » n’est pas défini dans les fonctions Rejeté Rejeté
    « ceci » n’est pas contraint à l’objet dans les méthodes primitives Rejeté Rejeté
    « this » n’est pas contraint de s’opposer dans les accesseurs primitifs Rejeté Rejeté
    L’octal hérité est une SyntaxError Rejeté Rejeté
    l’affectation à des identificateurs non résolus est une erreur de référence Rejeté Rejeté
    l’affectation à eval ou arguments est une erreur de syntaxe Rejeté Rejeté
    l’affectation à des propriétés non accessibles en écriture est un TypeError Rejeté Rejeté
    eval ou arguments bindings est une erreur de syntaxe Rejeté Rejeté
    arguments.caller supprimé ou est un TypeError Rejeté Rejeté
    arguments.callee est une TypeError Rejeté Rejeté
    (function(){}).caller and (function(){}).arguments est une TypeError Rejeté Rejeté
    arguments est non mappé Rejeté Rejeté
    eval() ne peut pas créer de liaisons Rejeté Rejeté
    la suppression de liaisons est une erreur de syntaxe Rejeté Rejeté
    la suppression des propriétés non configurables est un TypeError Rejeté Rejeté
    « with » est une erreur de syntaxe Rejeté Rejeté
    noms de paramètres répétés est une erreur de syntaxe Rejeté Rejeté
    Les expressions de fonction avec un nom et un argument correspondants sont valides Rejeté Rejeté
    Tableau 116. Fonction.prototype.liaison
    Fonctionnalité Mode ECMAScript 2021 (ES12) Mode standard ES5
    Fonction.prototype.liaison Pris en charge Pris en charge
    Tableau 117. JSON
    Fonctionnalité Mode ECMAScript 2021 (ES12) Mode standard ES5
    JSON Pris en charge Pris en charge