> ## Documentation Index
> Fetch the complete documentation index at: https://auth0.generaltranslation.app/llms.txt
> Use this file to discover all available pages before exploring further.

# 変数とヘルパー関数

> アクション用のフォームで変数を使用する方法を説明します。

変数を使用すると、フォームとフローに含まれるデータにアクセスして、カスタムビジネスロジックと自動化を作成できます。

変数を使用する際の基本的な考慮事項は次のとおりです。

* 変数は中括弧`{{ variable }}`で囲みます。
* 変数が存在しないか解決できない場合は、`未定義`の変数と同じ効果があります。
* `null`または`未定義`の変数を処理するには、nullish演算子を使用できます。例:`{{fields.foo ?? fields.bar}}`。

<div id="available-variables">
  ## 利用できる変数
</div>

フォームとフローを使用して顧客から収集したデータを参照および変換するには、さまざまな種類の変数を使用できます。

<table class="table">
  <thead>
    <tr>
      <th><b>変数</b></th>
      <th><b>構文</b></th>
      <th><b>場所</b></th>
      <th><b>説明</b></th>
    </tr>
  </thead>

  <tbody>
    <tr>
      <td>Context（コンテキスト）</td>
      <td>`{{context.*}}`</td>
      <td>フォーム/フロー</td>
      <td>現在のトランザクションのリファレンスコンテキストデータ</td>
    </tr>

    <tr>
      <td>Form fields（フォームフィールド）</td>
      <td>`{{fields.*}}`</td>
      <td>フォーム/フロー</td>
      <td>フォームフィールドと非表示フィールドからのリファレンスデータ</td>
    </tr>

    <tr>
      <td>Shared variables（共有変数）</td>
      <td>`{{vars.*}}`</td>
      <td>フォーム/フロー</td>
      <td>共有変数として保存されたリファレンスデータ</td>
    </tr>

    <tr>
      <td>Flow actions output（フローアクション出力）</td>
      <td>`{{actions.*}}`</td>
      <td>フロー</td>
      <td>前のフローアクションの出力応答からのリファレンスデータ</td>
    </tr>

    <tr>
      <td>Helper functions（ヘルパー関数）</td>
      <td>`{{functions.*}}`</td>
      <td>フォーム/フロー</td>
      <td>データ変換のためのヘルパー関数</td>
    </tr>
  </tbody>
</table>

<div id="context-variables">
  ### コンテキスト変数
</div>

フォームとフローは、現在のトランザクションからコンテキスト変数を自動的に継承します。次のコンテキスト変数にアクセスできます。

* `user`オブジェクト。以下に挙げたプロパティにアクセスできます。

  * `user.user_id`
  * `user.username`
  * `user.name`
  * `user.given_name`
  * `user.family_name`
  * `user.nickname`
  * `user.email`
  * `user.email_verified`
  * `user.phone_number`
  * `user.phone_verified`
  * `user.picture`
  * `user.user_metadata`
  * `user.app_metadata`
  * `user.created_at`
  * `user.updated_at`
  * `user.last_password_reset`
  * `user.identities`
* 次のプロパティにアクセスできる`組織`オブジェクト。

  * `organization.id`
  * `organization.name`
  * `organization.display_name`
  * `organization.metadata`
* 次のプロパティにアクセスできる`クライアント`オブジェクト。

  * `client.client_id`
  * `client.name`
* 次のプロパティにアクセスできる`テナント`オブジェクト。

  * `tenant.name`
* 次のプロパティにアクセスできる`トランザクション`オブジェクト。

  * `transaction.state`

<Accordion title="コンテキストオブジェクトの例">
  ```json lines expandable theme={null}
  {
    "user": {
      "user_id": "auth0|658409...",
      "name": "ana@travel0.com",
      "nickname": "ana",
      "email": "ana@travel0.com",
      "email_verified": true,
      "picture": "https://s.gravatar.com/avatar/8eb1b522f6...",
      "user_metadata": {},
      "app_metadata": {},
      "created_at": "2023-12-21T09:46:40.487Z",
      "updated_at": "2024-05-07T10:44:26.271Z",
      "last_password_reset": "2023-12-21T09:49:08.932Z",
      "identities": [
        {
          "user_id": "6584...",
          "isSocial": false,
          "provider": "auth0",
          "connection": "Username-Password-Authentication"
        }
      ]
    },
    "client": {
      "client_id": "xpeg5...",
      "name": "My App"
    },
    "tenant": {
      "name": "tenant-testing"
    },
    "transaction": {
      "state": "hKFo2SBId2M0..."
    }
  }
  ```
</Accordion>

例：  `{{context.user.user_id}}`は、`ユーザー`オブジェクトの`user_id`を参照します。

<Frame>
  <img src="https://mintcdn.com/generaltranslationinc/fJ7FJkQ9-WdlT49P/docs/images/ja-jp/cdy7uua7fh8z/3B8DRhXO2wGqeqSFb8KbQv/0a61cdbbb7f1d290950a2ddb9857aac3/Contex-variable.png?fit=max&auto=format&n=fJ7FJkQ9-WdlT49P&q=85&s=15d0f2d242117cff0c474f658cb64d43" alt="Dashboard > Forms > Flows" data-og-width="1141" width="1141" data-og-height="219" height="219" data-path="docs/images/ja-jp/cdy7uua7fh8z/3B8DRhXO2wGqeqSFb8KbQv/0a61cdbbb7f1d290950a2ddb9857aac3/Contex-variable.png" data-optimize="true" data-opv="3" srcset="https://mintcdn.com/generaltranslationinc/fJ7FJkQ9-WdlT49P/docs/images/ja-jp/cdy7uua7fh8z/3B8DRhXO2wGqeqSFb8KbQv/0a61cdbbb7f1d290950a2ddb9857aac3/Contex-variable.png?w=280&fit=max&auto=format&n=fJ7FJkQ9-WdlT49P&q=85&s=d11671d63ff9f3b7eef800a845d27dca 280w, https://mintcdn.com/generaltranslationinc/fJ7FJkQ9-WdlT49P/docs/images/ja-jp/cdy7uua7fh8z/3B8DRhXO2wGqeqSFb8KbQv/0a61cdbbb7f1d290950a2ddb9857aac3/Contex-variable.png?w=560&fit=max&auto=format&n=fJ7FJkQ9-WdlT49P&q=85&s=5cc81e5d12a4bf8eae47cf6bd886273c 560w, https://mintcdn.com/generaltranslationinc/fJ7FJkQ9-WdlT49P/docs/images/ja-jp/cdy7uua7fh8z/3B8DRhXO2wGqeqSFb8KbQv/0a61cdbbb7f1d290950a2ddb9857aac3/Contex-variable.png?w=840&fit=max&auto=format&n=fJ7FJkQ9-WdlT49P&q=85&s=a0253ba0025f3848b85d6d959a49ba21 840w, https://mintcdn.com/generaltranslationinc/fJ7FJkQ9-WdlT49P/docs/images/ja-jp/cdy7uua7fh8z/3B8DRhXO2wGqeqSFb8KbQv/0a61cdbbb7f1d290950a2ddb9857aac3/Contex-variable.png?w=1100&fit=max&auto=format&n=fJ7FJkQ9-WdlT49P&q=85&s=9c860c40500c00e9138aa5181546a446 1100w, https://mintcdn.com/generaltranslationinc/fJ7FJkQ9-WdlT49P/docs/images/ja-jp/cdy7uua7fh8z/3B8DRhXO2wGqeqSFb8KbQv/0a61cdbbb7f1d290950a2ddb9857aac3/Contex-variable.png?w=1650&fit=max&auto=format&n=fJ7FJkQ9-WdlT49P&q=85&s=ee93cac696dca7362cdd01242e0d9708 1650w, https://mintcdn.com/generaltranslationinc/fJ7FJkQ9-WdlT49P/docs/images/ja-jp/cdy7uua7fh8z/3B8DRhXO2wGqeqSFb8KbQv/0a61cdbbb7f1d290950a2ddb9857aac3/Contex-variable.png?w=2500&fit=max&auto=format&n=fJ7FJkQ9-WdlT49P&q=85&s=6eb95bd0088dc9f79a1f81f173a196c5 2500w" />
</Frame>

<div id="form-fields-variables">
  ### フォームフィールド変数
</div>

フィールド変数には、フォームの入力フィールドからユーザーから収集されたデータと、非表示フィールドのデータが含まれます。各フィールドのデータは、フィールドタイプによって異なります。例：`{{fields.first_name`}}は、IDが`first_name`のフィールドの入力値を参照します。

<Frame>
  <img src="https://mintcdn.com/generaltranslationinc/xBEuvOEiZgMgyXPQ/docs/images/ja-jp/cdy7uua7fh8z/4D42A6ww4XvFxweoxh04Rd/016c2ed9d25bc2267ed3ed31bf8b2bf6/form-fields-variable.png?fit=max&auto=format&n=xBEuvOEiZgMgyXPQ&q=85&s=5a0699ccde06e6e6617ea56a753d65cb" alt="Dashboard > Actions > Forms > Form" data-og-width="1404" width="1404" data-og-height="497" height="497" data-path="docs/images/ja-jp/cdy7uua7fh8z/4D42A6ww4XvFxweoxh04Rd/016c2ed9d25bc2267ed3ed31bf8b2bf6/form-fields-variable.png" data-optimize="true" data-opv="3" srcset="https://mintcdn.com/generaltranslationinc/xBEuvOEiZgMgyXPQ/docs/images/ja-jp/cdy7uua7fh8z/4D42A6ww4XvFxweoxh04Rd/016c2ed9d25bc2267ed3ed31bf8b2bf6/form-fields-variable.png?w=280&fit=max&auto=format&n=xBEuvOEiZgMgyXPQ&q=85&s=ed57986b9727b8443e10a01e4bed06f6 280w, https://mintcdn.com/generaltranslationinc/xBEuvOEiZgMgyXPQ/docs/images/ja-jp/cdy7uua7fh8z/4D42A6ww4XvFxweoxh04Rd/016c2ed9d25bc2267ed3ed31bf8b2bf6/form-fields-variable.png?w=560&fit=max&auto=format&n=xBEuvOEiZgMgyXPQ&q=85&s=642f20127869828ee97a7cddb7bc0553 560w, https://mintcdn.com/generaltranslationinc/xBEuvOEiZgMgyXPQ/docs/images/ja-jp/cdy7uua7fh8z/4D42A6ww4XvFxweoxh04Rd/016c2ed9d25bc2267ed3ed31bf8b2bf6/form-fields-variable.png?w=840&fit=max&auto=format&n=xBEuvOEiZgMgyXPQ&q=85&s=57eaaaaac454d14ae2d0e925b8378365 840w, https://mintcdn.com/generaltranslationinc/xBEuvOEiZgMgyXPQ/docs/images/ja-jp/cdy7uua7fh8z/4D42A6ww4XvFxweoxh04Rd/016c2ed9d25bc2267ed3ed31bf8b2bf6/form-fields-variable.png?w=1100&fit=max&auto=format&n=xBEuvOEiZgMgyXPQ&q=85&s=6d383f71fcd85fe7096373f3c604b24f 1100w, https://mintcdn.com/generaltranslationinc/xBEuvOEiZgMgyXPQ/docs/images/ja-jp/cdy7uua7fh8z/4D42A6ww4XvFxweoxh04Rd/016c2ed9d25bc2267ed3ed31bf8b2bf6/form-fields-variable.png?w=1650&fit=max&auto=format&n=xBEuvOEiZgMgyXPQ&q=85&s=528dfb3d68a11dde0506fc5f308bf8c8 1650w, https://mintcdn.com/generaltranslationinc/xBEuvOEiZgMgyXPQ/docs/images/ja-jp/cdy7uua7fh8z/4D42A6ww4XvFxweoxh04Rd/016c2ed9d25bc2267ed3ed31bf8b2bf6/form-fields-variable.png?w=2500&fit=max&auto=format&n=xBEuvOEiZgMgyXPQ&q=85&s=94616e858b4ab81be8b7aba872965a13 2500w" />
</Frame>

<div id="flow-output-actions-variables">
  ### フロー出力アクション変数
</div>

フローアクションが実行されると、後続のアクションで参照できる出力オブジェクト応答が生成されます。例：`{{actions.generate_otp.code}}`は、IDが`generate_otp`のアクションの出力コードを参照します。

<Frame>
  <img src="https://mintcdn.com/generaltranslationinc/tqPYu6gkIVBTtEtD/docs/images/ja-jp/cdy7uua7fh8z/6jYtEdYqSGXm3DDv0mxQ0o/2d48012629745e07137bf6ba42f4d829/flow-output-variable.png?fit=max&auto=format&n=tqPYu6gkIVBTtEtD&q=85&s=e6799e31681a12d95773dd7bcd0569ff" alt="Dashboard > Actions > Forms > Flows" data-og-width="1404" width="1404" data-og-height="253" height="253" data-path="docs/images/ja-jp/cdy7uua7fh8z/6jYtEdYqSGXm3DDv0mxQ0o/2d48012629745e07137bf6ba42f4d829/flow-output-variable.png" data-optimize="true" data-opv="3" srcset="https://mintcdn.com/generaltranslationinc/tqPYu6gkIVBTtEtD/docs/images/ja-jp/cdy7uua7fh8z/6jYtEdYqSGXm3DDv0mxQ0o/2d48012629745e07137bf6ba42f4d829/flow-output-variable.png?w=280&fit=max&auto=format&n=tqPYu6gkIVBTtEtD&q=85&s=bd08f1ae2ab00bbc51148d6d41ca2806 280w, https://mintcdn.com/generaltranslationinc/tqPYu6gkIVBTtEtD/docs/images/ja-jp/cdy7uua7fh8z/6jYtEdYqSGXm3DDv0mxQ0o/2d48012629745e07137bf6ba42f4d829/flow-output-variable.png?w=560&fit=max&auto=format&n=tqPYu6gkIVBTtEtD&q=85&s=c05d27f33f57edd34f71752723bc91ea 560w, https://mintcdn.com/generaltranslationinc/tqPYu6gkIVBTtEtD/docs/images/ja-jp/cdy7uua7fh8z/6jYtEdYqSGXm3DDv0mxQ0o/2d48012629745e07137bf6ba42f4d829/flow-output-variable.png?w=840&fit=max&auto=format&n=tqPYu6gkIVBTtEtD&q=85&s=1fb1b69ce631d8e5dcb59677428c8467 840w, https://mintcdn.com/generaltranslationinc/tqPYu6gkIVBTtEtD/docs/images/ja-jp/cdy7uua7fh8z/6jYtEdYqSGXm3DDv0mxQ0o/2d48012629745e07137bf6ba42f4d829/flow-output-variable.png?w=1100&fit=max&auto=format&n=tqPYu6gkIVBTtEtD&q=85&s=f26daf879d350b6db6a6f84d27cc25d5 1100w, https://mintcdn.com/generaltranslationinc/tqPYu6gkIVBTtEtD/docs/images/ja-jp/cdy7uua7fh8z/6jYtEdYqSGXm3DDv0mxQ0o/2d48012629745e07137bf6ba42f4d829/flow-output-variable.png?w=1650&fit=max&auto=format&n=tqPYu6gkIVBTtEtD&q=85&s=8abf3e26705ba0fd62b0cfb9530f158a 1650w, https://mintcdn.com/generaltranslationinc/tqPYu6gkIVBTtEtD/docs/images/ja-jp/cdy7uua7fh8z/6jYtEdYqSGXm3DDv0mxQ0o/2d48012629745e07137bf6ba42f4d829/flow-output-variable.png?w=2500&fit=max&auto=format&n=tqPYu6gkIVBTtEtD&q=85&s=9486e560708e28595bf0885798a99f37 2500w" />
</Frame>

<div id="shared-variables">
  ### 共有変数
</div>

後続のフローと共有する変数、または同じトランザクション内のフォームコンポーネントと共有する変数を保存できます。共有変数は一時的なものであり、特定のフォームジャーニーに関連付けられています。その値には、そのジャーニーの外部からはアクセスできません。例：`{{vars.external_id}}`は、IDが`external_id`の共有変数の値を参照します。

<Frame>
  <img src="https://mintcdn.com/generaltranslationinc/xBEuvOEiZgMgyXPQ/docs/images/ja-jp/cdy7uua7fh8z/4571ExRTHL0KZKJKX9pNwj/abb631b8608a6356b0e5b3784cf8b02f/flow-shared-variable.png?fit=max&auto=format&n=xBEuvOEiZgMgyXPQ&q=85&s=684986591ed9d78b0a0d5f6752823728" alt="Dashboard > Actions > Forms > Flows" data-og-width="1215" width="1215" data-og-height="162" height="162" data-path="docs/images/ja-jp/cdy7uua7fh8z/4571ExRTHL0KZKJKX9pNwj/abb631b8608a6356b0e5b3784cf8b02f/flow-shared-variable.png" data-optimize="true" data-opv="3" srcset="https://mintcdn.com/generaltranslationinc/xBEuvOEiZgMgyXPQ/docs/images/ja-jp/cdy7uua7fh8z/4571ExRTHL0KZKJKX9pNwj/abb631b8608a6356b0e5b3784cf8b02f/flow-shared-variable.png?w=280&fit=max&auto=format&n=xBEuvOEiZgMgyXPQ&q=85&s=19e0593bbe81efb9acccdcb6a10309ae 280w, https://mintcdn.com/generaltranslationinc/xBEuvOEiZgMgyXPQ/docs/images/ja-jp/cdy7uua7fh8z/4571ExRTHL0KZKJKX9pNwj/abb631b8608a6356b0e5b3784cf8b02f/flow-shared-variable.png?w=560&fit=max&auto=format&n=xBEuvOEiZgMgyXPQ&q=85&s=b502f6e05ececb19a6b5507e2b7bff89 560w, https://mintcdn.com/generaltranslationinc/xBEuvOEiZgMgyXPQ/docs/images/ja-jp/cdy7uua7fh8z/4571ExRTHL0KZKJKX9pNwj/abb631b8608a6356b0e5b3784cf8b02f/flow-shared-variable.png?w=840&fit=max&auto=format&n=xBEuvOEiZgMgyXPQ&q=85&s=13d7f9a27eac6ee5321345b89ba1be78 840w, https://mintcdn.com/generaltranslationinc/xBEuvOEiZgMgyXPQ/docs/images/ja-jp/cdy7uua7fh8z/4571ExRTHL0KZKJKX9pNwj/abb631b8608a6356b0e5b3784cf8b02f/flow-shared-variable.png?w=1100&fit=max&auto=format&n=xBEuvOEiZgMgyXPQ&q=85&s=871db5f328f9ec2fda00bed263c75fb5 1100w, https://mintcdn.com/generaltranslationinc/xBEuvOEiZgMgyXPQ/docs/images/ja-jp/cdy7uua7fh8z/4571ExRTHL0KZKJKX9pNwj/abb631b8608a6356b0e5b3784cf8b02f/flow-shared-variable.png?w=1650&fit=max&auto=format&n=xBEuvOEiZgMgyXPQ&q=85&s=db35784c7d5b41fc0d9abbe001c95331 1650w, https://mintcdn.com/generaltranslationinc/xBEuvOEiZgMgyXPQ/docs/images/ja-jp/cdy7uua7fh8z/4571ExRTHL0KZKJKX9pNwj/abb631b8608a6356b0e5b3784cf8b02f/flow-shared-variable.png?w=2500&fit=max&auto=format&n=xBEuvOEiZgMgyXPQ&q=85&s=5a6397baf0d2b5da3e15137f65e2b3b4 2500w" />
</Frame>

<Warning>
  共有変数は：

  * 内部（サーバー側）であり、ブラウザー（クライアント側）には公開されません。
  * フォームコンポーネントで共有変数を参照した場合、解決してブラウザーに公開できます。
</Warning>

<div id="helper-functions">
  ### ヘルパー関数
</div>

ヘルパー関数を使用すると、データを変換して簡単な操作を実行できます。例：`{{functions.toString(fields.privacy_policies)}}`は、`toString()`関数を使用して、ID`privacy_policies`のフィールドの値を変換します。

<Frame>
  <img src="https://mintcdn.com/generaltranslationinc/P5C2FvJW5xWCh6NI/docs/images/ja-jp/cdy7uua7fh8z/1gyox33XJEtdkT43NppblT/0e878cc5ae2bde11b4207e105bbac6c5/flow-helper-functions.png?fit=max&auto=format&n=P5C2FvJW5xWCh6NI&q=85&s=0d2680b461af2150b03b882581997255" alt="Dashboard > Actions > Forms > Flows" data-og-width="1404" width="1404" data-og-height="290" height="290" data-path="docs/images/ja-jp/cdy7uua7fh8z/1gyox33XJEtdkT43NppblT/0e878cc5ae2bde11b4207e105bbac6c5/flow-helper-functions.png" data-optimize="true" data-opv="3" srcset="https://mintcdn.com/generaltranslationinc/P5C2FvJW5xWCh6NI/docs/images/ja-jp/cdy7uua7fh8z/1gyox33XJEtdkT43NppblT/0e878cc5ae2bde11b4207e105bbac6c5/flow-helper-functions.png?w=280&fit=max&auto=format&n=P5C2FvJW5xWCh6NI&q=85&s=70e48d9c20756091f72eae634be95bb6 280w, https://mintcdn.com/generaltranslationinc/P5C2FvJW5xWCh6NI/docs/images/ja-jp/cdy7uua7fh8z/1gyox33XJEtdkT43NppblT/0e878cc5ae2bde11b4207e105bbac6c5/flow-helper-functions.png?w=560&fit=max&auto=format&n=P5C2FvJW5xWCh6NI&q=85&s=383f6c45ae2c22a03fc823c0ae9af688 560w, https://mintcdn.com/generaltranslationinc/P5C2FvJW5xWCh6NI/docs/images/ja-jp/cdy7uua7fh8z/1gyox33XJEtdkT43NppblT/0e878cc5ae2bde11b4207e105bbac6c5/flow-helper-functions.png?w=840&fit=max&auto=format&n=P5C2FvJW5xWCh6NI&q=85&s=dc159f42d9dc1d64c8443152c32a4498 840w, https://mintcdn.com/generaltranslationinc/P5C2FvJW5xWCh6NI/docs/images/ja-jp/cdy7uua7fh8z/1gyox33XJEtdkT43NppblT/0e878cc5ae2bde11b4207e105bbac6c5/flow-helper-functions.png?w=1100&fit=max&auto=format&n=P5C2FvJW5xWCh6NI&q=85&s=dcfed105d32d5f6f073389dcae5160e4 1100w, https://mintcdn.com/generaltranslationinc/P5C2FvJW5xWCh6NI/docs/images/ja-jp/cdy7uua7fh8z/1gyox33XJEtdkT43NppblT/0e878cc5ae2bde11b4207e105bbac6c5/flow-helper-functions.png?w=1650&fit=max&auto=format&n=P5C2FvJW5xWCh6NI&q=85&s=1e645064f601a09895e92b8863558d80 1650w, https://mintcdn.com/generaltranslationinc/P5C2FvJW5xWCh6NI/docs/images/ja-jp/cdy7uua7fh8z/1gyox33XJEtdkT43NppblT/0e878cc5ae2bde11b4207e105bbac6c5/flow-helper-functions.png?w=2500&fit=max&auto=format&n=P5C2FvJW5xWCh6NI&q=85&s=46efa311df8959b7150c70bad9b30a5a 2500w" />
</Frame>

使用可能なヘルパー関数は次のとおりです。

<table class="table">
  <thead>
    <tr>
      <th>関数</th>
      <th>説明</th>
      <th>例</th>
    </tr>
  </thead>

  <tbody>
    <tr>
      <td>toArray(value)</td>
      <td>値を配列に変換します</td>
      <td>`{{ functions.toArray('abc') }} // ['abc']`</td>
    </tr>

    <tr>
      <td>toBoolean(value)</td>
      <td>値をブール値に変換します</td>
      <td>`{{ functions.toBoolean(1) }} // true `<br /><br />`{{ functions.toBoolean(0) }} // false`</td>
    </tr>

    <tr>
      <td>length(value)</td>
      <td>パラメーター値の長さを返します</td>
      <td>`{{ functions.length('auth0') }} // 5`</td>
    </tr>

    <tr>
      <td>mask(value)</td>
      <td>実行時に公開されないように値をマスクします</td>
      <td>`{{ functions.mask('my_awesome_secret') }} // ███`</td>
    </tr>

    <tr>
      <td>toNumber(value)</td>
      <td>値を数値に変換します</td>
      <td>`{{ functions.toNumber('123') }} // 123`</td>
    </tr>

    <tr>
      <td>random(min, max, \[boolean])</td>
      <td>最小値と最大値の間の乱数を返します</td>
      <td>`{{ functions.random(0, 6) }} // 4 `<br /><br />`{{ functions.random(0, 6, true) }} // 3.8523497...`</td>
    </tr>

    <tr>
      <td>slice(value, start, end)</td>
      <td>開始インデックスと終了インデックスの間の値配列または文字列のセクションを返します</td>
      <td>`{{ functions.slice( 'example', 3, 5) }} // 'mp'`</td>
    </tr>

    <tr>
      <td>toString(value)</td>
      <td>値を文字列に変換します</td>
      <td>`{{ functions.toString(123) }} // '123'`</td>
    </tr>

    <tr>
      <td>substring(value, start, end)</td>
      <td>開始インデックスと終了インデックスの間の値のセクションを返します。<a href="https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/substring#differences_between_substring_and_slice">sliceとsubstring関数の違い</a>についてお読みください</td>
      <td>`{{ functions.substring( 'example’', 3, 5) }} // 'mp'`</td>
    </tr>

    <tr>
      <td>toTimestamp()</td>
      <td>現在のUNIXタイムスタンプを返します</td>
      <td>`{{ functions.toTimestamp() }} // 1628761483`</td>
    </tr>

    <tr>
      <td>toTimestamp(date)</td>
      <td>指定された日付をUNIX時間で返します</td>
      <td>`{{ functions.toTimestamp('2021-04-30T10:02:50.876Z') }} // 1619776970`</td>
    </tr>

    <tr>
      <td>toTimestamp(date)</td>
      <td>指定された日付をUNIX時間で返します</td>
      <td>`{{ functions.toTimestamp('2021-04-30T10:02:50.876Z') }} // 1619776970`</td>
    </tr>

    <tr>
      <td>replaceAll(value, string, replacement)</td>
      <td>パターンに一致するすべての部分を置換文字列に置き換えた新しい文字列を返します。</td>
      <td>`{{ functions.replaceall('2021-04-30', '-', '/') }} // 2021/04/30`</td>
    </tr>

    <tr>
      <td>replace(value, string, replacement)</td>
      <td>パターンに一致するすべての部分を置換文字列に置き換えた新しい文字列を返します。パターンが文字列の場合、最初の出現のみが置換されます。</td>
      <td>`{{ functions.replace('2021-04-30', '-', '/') }} // 2021/04-30`</td>
    </tr>

    <tr>
      <td>split(value, Separator, limit?)</td>
      <td>セパレーターで区切られた部分文字列の順序付きリストを返します。</td>
      <td>`{{ functions.split('2021-04-30', '-') }} // ['2021', '04', '30']`</td>
    </tr>

    <tr>
      <td>now()</td>
      <td>現在の日付をISO8601形式で返します。</td>
      <td>`{{ functions.now() }} // 2021-04-30T10:31:28.576Z`</td>
    </tr>

    <tr>
      <td>includes(collection, item, fromIndex?)</td>
      <td>配列のエントリに特定の値が含まれているかどうかを返します。</td>
      <td>`{{ functions.includes(['auth0', 'identity', 'authentication'], 'identity') }} // true`</td>
    </tr>

    <tr>
      <td>indexOf(collection, item, fromIndex?)</td>
      <td>配列内で特定の要素が見つかる最初のインデックスを返します。存在しない場合は-1を返します。</td>
      <td>`{{ functions.indexOf(['auth0', 'identity', 'authentication'], 'identity') }} // 1`</td>
    </tr>

    <tr>
      <td>merge(base, value)</td>
      <td>基本データ型に応じて、結合された配列、オブジェクト、または連結された文字列を返します。</td>
      <td>`{{ functions.merge(['auth0', 'identity'], ['authentication']) }} // ['auth0', 'identity', 'authentication']`</td>
    </tr>

    <tr>
      <td>md5(value)</td>
      <td>MD5 ハッシュ値を返します。</td>
      <td>`{{ functions.md5('auth0') }} // 7bbb597...`</td>
    </tr>

    <tr>
      <td>sha1(value)</td>
      <td>SHA1 ハッシュ値を返します。</td>
      <td>`{{ functions.sha1('auth0') }} // b4ec5339...`</td>
    </tr>

    <tr>
      <td>sha256(value)</td>
      <td>SHA256ハッシュ値を返します。</td>
      <td>`{{ functions.sha256('auth0') }} // d9082bdc...`</td>
    </tr>

    <tr>
      <td>sha512(value)</td>
      <td>SHA512ハッシュ値を返します。</td>
      <td>`{{ functions.sha512('auth0') }} // c0d588069d...`</td>
    </tr>

    <tr>
      <td>uuid()</td>
      <td>ランダムなv4 UUIDを返します</td>
      <td>`{{ functions.uuid() }} // 36b8f84d-df4e-4d49-b662-bcde71a8764`</td>
    </tr>
  </tbody>
</table>

<div id="variables-best-practices">
  ## 変数のベストプラクティス
</div>

<div id="use-meaningful-ids">
  ### 意味のあるIDを使用する
</div>

フォームフィールドまたはフローアクションを追加すると、IDが自動的に生成されます。

IDをよりわかりやすい値に更新して、含まれる情報を識別できるようにします。たとえば、ユーザーの名を保存するフォームフィールドを作成する場合は、IDを`first_name`に更新します。

<div id="be-mindful-when-updating-existing-ids">
  ### 既存のIDを更新するときは注意してください
</div>

変数がすでに使用されており、IDを変更する必要がある場合は、参照した場所を特定し、それに応じてIDを更新して、未定義または空の値にならないようにします。

<div id="check-flow-executions">
  ### フロー実行を確認する
</div>

予期しない変数値が表示された場合は、[**実行** ](/docs/ja-JP/ja-jp/customize/forms/flows/flow-execution-and-debugger)ビューを使用して変数のトラブルシューティングを行います。

<div id="use-the-autocomplete-menu">
  ### オートコンプリートメニューを使用する
</div>

オートコンプリートメニューを使用すると、既存の変数を見つけて適切に参照できます。

<Frame>
  <img src="https://mintcdn.com/generaltranslationinc/JoMgZsgQxj2_Gov3/docs/images/ja-jp/cdy7uua7fh8z/3SKnDuaMzSImxZtDDAoZaz/9ea800fad29ef71d1ded3c72b87660a4/Autocomplete-flows.png?fit=max&auto=format&n=JoMgZsgQxj2_Gov3&q=85&s=50063b5178219bd98013ee0457c67321" alt="Dashboard > Actions > Forms > Flows" data-og-width="1361" width="1361" data-og-height="502" height="502" data-path="docs/images/ja-jp/cdy7uua7fh8z/3SKnDuaMzSImxZtDDAoZaz/9ea800fad29ef71d1ded3c72b87660a4/Autocomplete-flows.png" data-optimize="true" data-opv="3" srcset="https://mintcdn.com/generaltranslationinc/JoMgZsgQxj2_Gov3/docs/images/ja-jp/cdy7uua7fh8z/3SKnDuaMzSImxZtDDAoZaz/9ea800fad29ef71d1ded3c72b87660a4/Autocomplete-flows.png?w=280&fit=max&auto=format&n=JoMgZsgQxj2_Gov3&q=85&s=c3d76e395674ecbe7cf317940adb6901 280w, https://mintcdn.com/generaltranslationinc/JoMgZsgQxj2_Gov3/docs/images/ja-jp/cdy7uua7fh8z/3SKnDuaMzSImxZtDDAoZaz/9ea800fad29ef71d1ded3c72b87660a4/Autocomplete-flows.png?w=560&fit=max&auto=format&n=JoMgZsgQxj2_Gov3&q=85&s=e24a76cacf26ff1e3dfe556dfe15092e 560w, https://mintcdn.com/generaltranslationinc/JoMgZsgQxj2_Gov3/docs/images/ja-jp/cdy7uua7fh8z/3SKnDuaMzSImxZtDDAoZaz/9ea800fad29ef71d1ded3c72b87660a4/Autocomplete-flows.png?w=840&fit=max&auto=format&n=JoMgZsgQxj2_Gov3&q=85&s=8d742f75579d7ae9562c64d87dd116a5 840w, https://mintcdn.com/generaltranslationinc/JoMgZsgQxj2_Gov3/docs/images/ja-jp/cdy7uua7fh8z/3SKnDuaMzSImxZtDDAoZaz/9ea800fad29ef71d1ded3c72b87660a4/Autocomplete-flows.png?w=1100&fit=max&auto=format&n=JoMgZsgQxj2_Gov3&q=85&s=1c2b7c0f96463ab8659a4e9f37f0eca1 1100w, https://mintcdn.com/generaltranslationinc/JoMgZsgQxj2_Gov3/docs/images/ja-jp/cdy7uua7fh8z/3SKnDuaMzSImxZtDDAoZaz/9ea800fad29ef71d1ded3c72b87660a4/Autocomplete-flows.png?w=1650&fit=max&auto=format&n=JoMgZsgQxj2_Gov3&q=85&s=0c250f0f79dbee805f637b4331684e53 1650w, https://mintcdn.com/generaltranslationinc/JoMgZsgQxj2_Gov3/docs/images/ja-jp/cdy7uua7fh8z/3SKnDuaMzSImxZtDDAoZaz/9ea800fad29ef71d1ded3c72b87660a4/Autocomplete-flows.png?w=2500&fit=max&auto=format&n=JoMgZsgQxj2_Gov3&q=85&s=f46f97c35bcafeea271d75d74d94e710 2500w" />
</Frame>

<Frame>
  <img src="https://mintcdn.com/generaltranslationinc/ABlkB6TUYafgJS-z/docs/images/ja-jp/cdy7uua7fh8z/2kjRKozVgrd2a7UJXOANaN/ee5452d7210cd2f13b0e97763f11c82a/Autocomplete-forms.png?fit=max&auto=format&n=ABlkB6TUYafgJS-z&q=85&s=e059f65d446b2916eaa3e98894949863" alt="Dashboard > Actions > Forms > Form" data-og-width="1394" width="1394" data-og-height="630" height="630" data-path="docs/images/ja-jp/cdy7uua7fh8z/2kjRKozVgrd2a7UJXOANaN/ee5452d7210cd2f13b0e97763f11c82a/Autocomplete-forms.png" data-optimize="true" data-opv="3" srcset="https://mintcdn.com/generaltranslationinc/ABlkB6TUYafgJS-z/docs/images/ja-jp/cdy7uua7fh8z/2kjRKozVgrd2a7UJXOANaN/ee5452d7210cd2f13b0e97763f11c82a/Autocomplete-forms.png?w=280&fit=max&auto=format&n=ABlkB6TUYafgJS-z&q=85&s=2c752444a60fddec26d1f9460380dd08 280w, https://mintcdn.com/generaltranslationinc/ABlkB6TUYafgJS-z/docs/images/ja-jp/cdy7uua7fh8z/2kjRKozVgrd2a7UJXOANaN/ee5452d7210cd2f13b0e97763f11c82a/Autocomplete-forms.png?w=560&fit=max&auto=format&n=ABlkB6TUYafgJS-z&q=85&s=586516a63a9fe89f8dc0b39606196356 560w, https://mintcdn.com/generaltranslationinc/ABlkB6TUYafgJS-z/docs/images/ja-jp/cdy7uua7fh8z/2kjRKozVgrd2a7UJXOANaN/ee5452d7210cd2f13b0e97763f11c82a/Autocomplete-forms.png?w=840&fit=max&auto=format&n=ABlkB6TUYafgJS-z&q=85&s=96291a68f0445b516b6804597745afee 840w, https://mintcdn.com/generaltranslationinc/ABlkB6TUYafgJS-z/docs/images/ja-jp/cdy7uua7fh8z/2kjRKozVgrd2a7UJXOANaN/ee5452d7210cd2f13b0e97763f11c82a/Autocomplete-forms.png?w=1100&fit=max&auto=format&n=ABlkB6TUYafgJS-z&q=85&s=c83a84151f78132db1f0114178af462c 1100w, https://mintcdn.com/generaltranslationinc/ABlkB6TUYafgJS-z/docs/images/ja-jp/cdy7uua7fh8z/2kjRKozVgrd2a7UJXOANaN/ee5452d7210cd2f13b0e97763f11c82a/Autocomplete-forms.png?w=1650&fit=max&auto=format&n=ABlkB6TUYafgJS-z&q=85&s=86773dc467ea99774b2b9f15832a9fde 1650w, https://mintcdn.com/generaltranslationinc/ABlkB6TUYafgJS-z/docs/images/ja-jp/cdy7uua7fh8z/2kjRKozVgrd2a7UJXOANaN/ee5452d7210cd2f13b0e97763f11c82a/Autocomplete-forms.png?w=2500&fit=max&auto=format&n=ABlkB6TUYafgJS-z&q=85&s=9807dcd4d54f901c69e740c6eb03875a 2500w" />
</Frame>
