---
sourceDocument: Referência de API do Xanadu
sourceDocumentLink: https://servicenow-prod.fluidtopics.net/r/pt-BR/xanadu/api-reference

 Release :

    - xanadu

ft:locale :

    - pt-BR

ft:publication_title :

    - Referência de API do Xanadu

ft:clusterId :

    - crapiref

bundleId :

    - crapiref

workflow :

    - Creator


---

# Modos JavaScript

# Modos JavaScript {#ariaid-title1}

* Versão de lançamento: Xanadu
* 
* Atualizado 1 de ago. de 2024
* 
* ![](https://www.servicenow.com/docs/portal-asset/ico-clock) 2 min. de leitura

O modo JavaScript é uma configuração de design e tempo de execução para scripts e aplicações personalizadas. Para oferecer suporte a scripts existentes do lado do servidor e novos scripts desenvolvidos de acordo com o padrão ECMAScript 2021, o mecanismo JavaScript tem três modos: ECMAScript 2021 (ES12), Padrões ES5 e Compatibilidade.

O modo JavaScript controla a quais recursos JavaScript você tem acesso em uma aplicação ou script. O modo padrão para novas aplicações com escopo é ECMAScript 2021 (ES12) e para novas aplicações globais, é Padrões ES5. Você também pode ativar o modo ECMAScript 2021 (ES12) para scripts individuais em aplicações que usam Padrões ES5 ou modo de compatibilidade.

Para obter mais informações sobre os recursos compatíveis com os modos ECMAScript 2021 (ES12) e ES5 Standards, consulte [Suporte ao recurso do mecanismo JavaScript](https://servicenow-prod.fluidtopics.net/gWESx_virSDeI_EyfZxqVA "Compare os recursos do ECMAScript entre os modos JavaScript ECMAScript 2021 (ES12) e ES5 em Xanadu . Ambos os modos são compatíveis com um subconjunto de recursos do ECMAScript.").

## Modo ECMAScript 2021 (ES12) {#c_JS_modes__section_qdz_bxl_gtb}

O modo ECMAScript 2021 (ES12) é o modo padrão quando você cria novas aplicações com escopo. Quando você cria novos scripts, o modo ECMAScript 2021 (ES12) é ativado por padrão, independentemente do modo JavaScript configurado para a aplicação. Este modo não preserva os comportamentos legados no mecanismo JavaScript anterior aTokyo nem funciona com scripts globais.  
O modo ECMAScript 2021 (ES12) é compatível com um subconjunto da sintaxe e dos recursos do ECMAScript 2021 (ES12) e ECMAScript 2022 (ES13) , incluindo os seguintes recursos:

* Parâmetros de função padrão
* Parâmetros REST
* Loops para-de
* Literais do modelo
* Destruição
  * Declarações
  * Atribuição
  * Parâmetros
  {#c_JS_modes__ul_llm_52w_mtb}
* Declaração const.
* Permitir declaração
* Funções de seta
* Declarações de classe
* Conjunto de mapas
* Operador de encadeamento opcional `(?.)`
{#c_JS_modes__ul_rdz_bxl_gtb}

Para saber mais sobre recursos específicos do ECMAScript 2021 (ES12), assista aos vídeos [Vamos aprender ECMAScript 2021](https://www.youtube.com/playlist?list=PL3rNcyAiDYK1fUOYO83KOfF-NriBRAERV) no ServiceNow canal do YouTube do programa para desenvolvedores.

## Modo ES5 Standards {#c_JS_modes__section_pjd_s34_4tb}

O modo ES5 Standards é o modo padrão para aplicações globais e é uma opção para aplicações com escopo. Este modo não preserva os comportamentos legados no mecanismo JavaScript anterior aHelsinki.  
O modo de padrões do ES5 é compatível com a sintaxe e os recursos do ECMAScript5, incluindo os seguintes recursos:

* A declaração "usar estrito"
* Controle sobre a extensibilidade de objetos
* Obter e definir propriedades em objetos (acessadores)
* Controle sobre a capacidade de escrita, configuração e enumerabilidade das propriedades do objeto
* Novos métodos Matriz e Data
* Suporte a JSON nativo
* Suporte para bibliotecas modernas de terceiros, como lodash.js e momento.js
{#c_JS_modes__ul_gyz_1mq_tv}

## Modo de compatibilidade {#c_JS_modes__section_ojd_s34_4tb}

O modo de compatibilidade é usado para todos os scripts desenvolvidos antes da adição do modo ES5 Standards. O modo de compatibilidade tem algumas diferenças em relação ao mecanismo JavaScript anterior.  
Mudanças de suporte a JSON:

* JSON.stringify() e JSON.parse() são implementados usando o objeto ES5 JSON nativo.
* O novo JSON().encode() e o novo JSON().decode() ainda são compatíveis, mas só devem ser usados quando o comportamento legado for necessário.
{#c_JS_modes__ul_rwm_plq_tv}

O uso de bibliotecas JavaScript de terceiros não é compatível com o modo de compatibilidade.
* **[Considerações para alternar os modos JavaScript](https://servicenow-prod.fluidtopics.net/nEkdNyH8UtwCC~_FwxTyjA)**   
  Alternar o modo JavaScript de uma aplicação ou script pode mudar o comportamento dos scripts existentes. Revise alguns exemplos de mudanças de comportamento antes de alternar os modos JavaScript ou para solucionar quaisquer problemas que você tenha após a alternância.
* **[Definir o modo JavaScript de uma aplicação](https://servicenow-prod.fluidtopics.net/6bOZ1jHHpfVgqAdjhnihag)**   
  Configure quais recursos do ECMAScript podem ser usados em uma aplicação selecionando o modo JavaScript.
* **[Ativar o modo ECMAScript 2021 (ES12) para um script](https://servicenow-prod.fluidtopics.net/FYAjzZS0yrnh5wEzOwp0pw)**   
  Use os recursos JavaScript mais recentes compatíveis com o modo ECMAScript 2021 (ES12) em scripts do lado do servidor em aplicações que usam o modo Padrões ES5 ou o modo Compatibilidade.

