サポートされているランタイム機能 - AWS AppSync

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

サポートされているランタイム機能

以下のセクションでは、APPSYNC_JS ランタイムでサポートされている機能セットについて説明します。

主要機能

次の主要機能がサポートされています。

Types

次のタイプの BGP がサポートされています。

  • 数字

  • 文字列

  • ブール値

  • objects

  • 配列

  • 関数

Operators

次のような演算子がサポートされています。

  • 標準の数学演算子 (+-/%* など)

  • Null 合体演算子 (??)

  • オプションのチェーニング (?.)

  • ビット演算子

  • void および typeof 演算子

  • スプレッド演算子 (...

以下は、サポートされていない演算子です。

  • 単項演算子 (++--、および ~)

  • inoperator

    注記

    Object.hasOwn 演算子を使用して、指定したプロパティが指定されたオブジェクト内にあるかどうかを調べます。

Statements

次のステートメントがサポートされています。

  • const

  • let

  • var

  • break

  • else

  • for-in

  • for-of

  • if

  • return

  • switch

  • スプレッド構文

ただし、以下はサポートしていません。

  • catch

  • continue

  • do-while

  • finally

  • for(initialization; condition; afterthought)

    注記

    ただし、サポートされている for-in および for-of 式は例外です。

  • throw

  • try

  • while

  • ラベル付きステートメント

Literals

以下の ES 6 テンプレートリテラルがサポートされています。

  • 複数行文字列

  • 式の補間

  • ネストテンプレート

Functions

以下の構文がサポートされています。

  • 関数宣言はサポートされています。

  • ES 6 アロー関数はサポートされています。

  • ES 6 REST パラメータ構文はサポートされています。

Strict mode

関数は Strict モードで動作するため、関数コードに use_strict ステートメントを追加する必要はありません。これは変更できません。

プリミティブオブジェクト

以下の ES プリミティブオブジェクトがサポートされています。

Object

以下のオブジェクトがサポートされています。

  • Object.assign()

  • Object.entries()

  • Object.hasOwn()

  • Object.keys()

  • Object.values()

  • delete

String

以下の文字列がサポートされています。

  • String.prototype.length()

  • String.prototype.charAt()

  • String.prototype.concat()

  • String.prototype.endsWith()

  • String.prototype.indexOf()

  • String.prototype.lastIndexOf()

  • String.raw()

  • String.prototype.replace()

    注記

    正規表現はサポートされていません。

    ただし、Java スタイルの正規表現コンストラクトは、指定された パラメータでサポートされています。詳細については、「パターン」を参照してください。

  • String.prototype.replaceAll()

    注記

    正規表現はサポートされていません。

    ただし、Java スタイルの正規表現コンストラクトは、指定された パラメータでサポートされています。詳細については、「パターン」を参照してください。

  • 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

次の番号がサポートされています。

  • Number.isFinite

  • Number.isNaN

組み込みオブジェクトと関数

以下の ES 5.1 グローバル関数がサポートされています。

Math

次の Math 関数はサポートされていません。

  • Math.random()

  • Math.min()

  • Math.max()

  • Math.round()

  • Math.floor()

  • Math.ceil()

Array

以下の配列メソッドがサポートされています。

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

    注記

    Array.prototype.sort() は引数はサポートしていません。

  • 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

コンソールオブジェクトはデバッグに使用できます。ライブクエリの実行中に、コンソールログ/エラーステートメントが Amazon CloudWatch Logs に送信されます (ログ記録が有効になっている場合)。evaluateCode でのコード評価中、コマンドレスポンスにログステートメントが返されます。

  • console.error()

  • console.log()

Function
  • applybind call メソッドはサポートされていません。

  • 関数コンストラクタはサポートされていません。

  • 関数を引数として渡すことはサポートされていません。

  • 再帰的な関数呼び出しはサポートされていません。

JSON

次のJSONメソッドがサポートされています。

  • JSON.parse()

    注記

    解析された文字列が有効でない場合は、空白の文字列を返しますJSON。

  • JSON.stringify()

Promises

非同期プロセスはサポートされておらず、Promise もサポートされていません。

注記

ネットワークおよびファイルシステムへのアクセスは、 APPSYNC_JSのランタイム内ではサポートされていません AWS AppSync。 は、 AWS AppSync リゾルバーまたは AWS AppSync 関数によって行われたリクエストに基づいてすべての I/O オペレーション AWS AppSync を処理します。

Globals

以下のグローバル定数がサポートされています。

エラーのタイプ

throw でエラーをスローすることはサポートされていません。util.error() 関数を使用するとエラーを返すことができます。util.appendError 関数を使用して GraphQL レスポンスにエラーを含めることができます。

詳細については、「エラー utils」を参照してください。