View a markdown version of this page

Fitur runtime yang didukung - AWS AppSync GraphQL

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Fitur runtime yang didukung

Bagian di bawah ini menjelaskan kumpulan fitur yang didukung dari runtime APPSYNC_JS.

Fitur inti

Fitur inti berikut didukung.

Types

Jenis berikut didukung:

  • angka

  • tali

  • boolean

  • objek

  • larik

  • fungsi

Operators

Operator didukung, termasuk:

  • operator matematika standar (+,-,/,%,*, dll.)

  • operator penggabungan nullish () ??

  • Rantaian opsional () ?.

  • operator bitwise

  • voiddan typeof operator

  • operator spread (...)

Operator berikut tidak didukung:

  • operator unary (++,--, dan~)

  • Operator in

    catatan

    Gunakan Object.hasOwn operator untuk memeriksa apakah properti yang ditentukan ada di objek yang ditentukan.

Statements

Pernyataan berikut didukung:

  • const

  • let

  • var

  • break

  • else

  • for-in

  • for-of

  • if

  • return

  • switch

  • sintaks penyebaran

Berikut ini tidak didukung:

  • catch

  • continue

  • do-while

  • finally

  • for(initialization; condition; afterthought)

    catatan

    Pengecualian adalah for-in dan for-of ekspresi, yang didukung.

  • throw

  • try

  • while

  • pernyataan berlabel

Literals

Literal template ES 6 berikut didukung:

  • Multi-line string

  • Interpolasi ekspresi

  • Templat bersarang

Functions

Sintaks fungsi berikut didukung:

  • Deklarasi fungsi didukung.

  • Fungsi panah ES 6 didukung.

  • Sintaks parameter istirahat ES 6 didukung.

Strict mode

Fungsi beroperasi dalam mode ketat secara default, sehingga Anda tidak perlu menambahkan pernyataan use_strict dalam kode fungsi Anda. Ini tidak dapat diubah.

Objek primitif

Objek primitif ES berikut dan fungsinya didukung.

Object

Objek berikut didukung:

  • Object.assign()

  • Object.entries()

  • Object.hasOwn()

  • Object.keys()

  • Object.values()

  • delete

String

String berikut didukung:

  • String.prototype.length()

  • String.prototype.charAt()

  • String.prototype.concat()

  • String.prototype.endsWith()

  • String.prototype.indexOf()

  • String.prototype.lastIndexOf()

  • String.raw()

  • String.prototype.replace()

    catatan

    Ekspresi reguler tidak didukung.

    Namun, konstruksi ekspresi Java-styled reguler didukung dalam parameter yang disediakan. Untuk informasi lebih lanjut lihat P ola.

  • String.prototype.replaceAll()

    catatan

    Ekspresi reguler tidak didukung.

    Namun, konstruksi ekspresi Java-styled reguler didukung dalam parameter yang disediakan. Untuk informasi lebih lanjut lihat P ola.

  • 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

Angka-angka berikut didukung:

  • Number.isFinite

  • Number.isNaN

Built-in objek dan fungsi

Fungsi dan objek berikut didukung.

Math

Fungsi matematika berikut didukung:

  • Math.random()

  • Math.min()

  • Math.max()

  • Math.round()

  • Math.floor()

  • Math.ceil()

Array

Metode array berikut didukung:

  • 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()

    catatan

    Array.prototype.sort()tidak mendukung argumen.

  • 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

Objek konsol tersedia untuk debugging. Selama eksekusi kueri langsung, log/error pernyataan konsol dikirim ke Amazon CloudWatch Logs (jika logging diaktifkan). Selama evaluasi kode denganevaluateCode, pernyataan log dikembalikan dalam respons perintah.

  • console.error()

  • console.log()

Function
  • callMetode applybind,, dan tidak didukung.

  • Tidak mendukung konstruktor fungsi.

  • Meneruskan fungsi sebagai argumen tidak didukung.

  • Panggilan fungsi rekursif tidak didukung.

JSON

Metode JSON berikut didukung:

  • JSON.parse()

    catatan

    Mengembalikan string kosong jika string yang diurai bukan JSON yang valid.

  • JSON.stringify()

Promises

Proses asinkron tidak didukung, dan janji tidak didukung.

catatan

Akses jaringan dan sistem file tidak didukung dalam APPSYNC_JS runtime di AWS AppSync. AWS AppSync menangani semua I/O operasi berdasarkan permintaan yang dibuat oleh AWS AppSync resolver atau AWS AppSync fungsi.

Global

Mendukung konstanta global berikut:

Jenis kesalahan

Melempar kesalahan dengan throw tidak didukung. Anda dapat mengembalikan kesalahan dengan menggunakan util.error() fungsi. Anda dapat menyertakan kesalahan dalam respons GraphQL Anda dengan menggunakan util.appendError fungsi.

Untuk informasi selengkapnya, lihat Er ror utils.