As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.
Atributos compatíveis de runtime
As seções abaixo descrevem o conjunto de recursos compatível com o tempo de execução APPSYNC _JS.
Atributos principais
Os seguintes atributos principais são compatíveis.
- Types
-
Os seguintes tipos são compatíveis:
-
números
-
strings
-
booleanos
-
objects
-
arrays
-
funções
-
- Operators
-
Os operadores são suportados, incluindo:
-
Operadores matemáticos padrão (
+
,-
,/
,%
,*
, etc.) -
Operador de coalescência nula (
??
) -
Encadeamento opcional (
?.
) -
Operadores bitwise
-
Operador
void
etypeof
-
operadores de propagação (
...
)
Os operadores a seguir não são aceitos:
-
Operadores unários (
++
,--
e~
) -
Operador
in
nota
Use o operador
Object.hasOwn
para verificar se a propriedade especificada está no objeto especificado.
-
- Statements
-
As seguintes instruções são compatíveis:
-
const
-
let
-
var
-
break
-
else
-
for-in
-
for-of
-
if
-
return
-
switch
-
sintaxe de propagação
Não há suporte para o seguinte:
-
catch
-
continue
-
do-while
-
finally
-
for(initialization; condition; afterthought)
nota
As exceções são expressões
for-in
efor-of
, que são suportadas. -
throw
-
try
-
while
-
Instruções rotuladas
-
- Literals
-
As seguintes literais do modelo
ES 6 são compatíveis: -
Strings de várias linhas
-
Interpolação de expressão
-
Modelos de aninhamento
-
- Functions
-
A sintaxe da função a seguir também tem suporte:
-
As declarações de função são suportadas.
-
As funções de seta ES 6 são suportadas.
-
A sintaxe de parâmetro rest ES 6 é compatível.
-
- Strict mode
-
As funções operam no modo estrito por padrão, então você não precisa adicionar uma instrução
use_strict
ao seu código de função. Elas não podem ser alteradas.
Objetos primitivos
Os seguintes objetos primitivos de ES e suas funções são compatíveis.
- Object
-
Há suporte para os seguintes objetos:
-
Object.assign()
-
Object.entries()
-
Object.hasOwn()
-
Object.keys()
-
Object.values()
-
delete
-
- String
-
As seguintes strings são compatíveis:
-
String.prototype.length()
-
String.prototype.charAt()
-
String.prototype.concat()
-
String.prototype.endsWith()
-
String.prototype.indexOf()
-
String.prototype.lastIndexOf()
-
String.raw()
-
String.prototype.replace()
nota
Não há suporte para expressões regulares.
No entanto, construções de expressões regulares no estilo Java são suportadas no parâmetro fornecido. Para obter mais informações, consulte Padrão
. -
String.prototype.replaceAll()
nota
Não há suporte para expressões regulares.
No entanto, construções de expressões regulares no estilo Java são suportadas no parâmetro fornecido. Para obter mais informações, consulte Padrão
. -
String.prototype.slice()
-
String.prototype.split()
-
String.prototype.startsWith()
-
String.prototype.toLowerCase()
-
String.prototype.toUpperCase()
-
String.prototype.trim()
-
String.prototype.trimEnd()
-
String.prototype.trimStart()
-
- Number
-
Os seguintes números são compatíveis:
-
Number.isFinite
-
Number.isNaN
-
Objetos e funções integrados
As funções e objetos a seguir são compatíveis.
- Math
-
As seguintes funções matemáticas são compatíveis:
-
Math.random()
-
Math.min()
-
Math.max()
-
Math.round()
-
Math.floor()
-
Math.ceil()
-
- Array
-
Os seguintes métodos de matriz são compatíveis:
-
Array.prototype.length
-
Array.prototype.concat()
-
Array.prototype.fill()
-
Array.prototype.flat()
-
Array.prototype.indexOf()
-
Array.prototype.join()
-
Array.prototype.lastIndexOf()
-
Array.prototype.pop()
-
Array.prototype.push()
-
Array.prototype.reverse()
-
Array.prototype.shift()
-
Array.prototype.slice()
-
Array.prototype.sort()
nota
Array.prototype.sort()
não é compatível com argumentos. -
Array.prototype.splice()
-
Array.prototype.unshift()
-
Array.prototype.forEach()
-
Array.prototype.map()
-
Array.prototype.flatMap()
-
Array.prototype.filter()
-
Array.prototype.reduce()
-
Array.prototype.reduceRight()
-
Array.prototype.find()
-
Array.prototype.some()
-
Array.prototype.every()
-
Array.prototype.findIndex()
-
Array.prototype.findLast()
-
Array.prototype.findLastIndex()
-
delete
-
- Console
-
O objeto do console está disponível para depuração. Durante a execução da consulta em tempo real, as declarações de log/erro do console são enviadas para o Amazon CloudWatch Logs (se o registro estiver ativado). Durante a avaliação do código com
evaluateCode
, as instruções de log são retornadas na resposta do comando.-
console.error()
-
console.log()
-
- Function
-
-
Os métodos
apply
,bind
ecall
não são compatíveis. -
Os construtores de função não são compatíveis.
-
Não há suporte para passar uma função como argumento.
-
Chamadas de funções recursivas não são compatíveis
-
- JSON
-
Os seguintes JSON métodos são suportados:
-
JSON.parse()
nota
Retorna uma string em branco se a string analisada não for válidaJSON.
-
JSON.stringify()
-
- Promises
-
Promessas e processos assíncronos não são compatíveis.
nota
O acesso à rede e ao sistema de arquivos não é suportado no
APPSYNC_JS
tempo de execução do AWS AppSync. AWS AppSync lida com todas as operações de E/S com base nas solicitações feitas pelo AWS AppSync resolvedor ou pela AWS AppSync função.
Variáveis globais
As seguintes restrições globais são válidas:
-
NaN
-
Infinity
-
undefined
Tipos de erro
Não é possível lançar erros com throw
. Você pode retornar um erro usando a função util.error()
. Você pode incluir um erro na sua resposta do GraphQL usando a função util.appendError
.
Para obter mais informações, consulte Utilitários de erro.