

これは新しい CloudFormation テンプレートリファレンスガイドです。ブックマークとリンクを更新してください。CloudFormation の開始方法については、『[AWS CloudFormation ユーザーガイド](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/Welcome.html)』を参照してください。

# `Fn::ToJsonString`
<a name="intrinsic-function-reference-ToJsonString"></a>

`Fn::ToJsonString` 組み込み関数は、オブジェクトまたは配列を対応する JSON 文字列に変換します。

**重要**  
`Fn::ToJsonString` 組み込み関数を使用するには、[`AWS::LanguageExtensions` 変換](transform-aws-languageextensions.md) を使用する必要があります。

## 宣言
<a name="tojsonstring-declaration"></a>

### JSON
<a name="intrinsic-function-reference-tojsonstring-syntax.json"></a>

```
{ "Fn::ToJsonString": Object }
```

```
{ "Fn::ToJsonString": Array }
```

### YAML
<a name="intrinsic-function-reference-tojsonstring-syntax.yaml"></a>

```
Fn::ToJsonString: Object
```

```
Fn::ToJsonString: Array
```

## パラメータ
<a name="tojsonstring-parameters"></a>

`Object`  
JSON 文字列に変換するオブジェクト。

`Array`  
JSON 文字列に変換する配列。

## 戻り値
<a name="intrinsic-function-reference-tojsonstring-return"></a>

JSON 文字列に変換されたオブジェクトまたは配列。

## 例
<a name="intrinsic-function-reference-tojsonstring-examples"></a>

### オブジェクトを JSON 文字列に変換する
<a name="intrinsic-function-reference-tojsonstring-example-subsection"></a>

このサンプルスニペットは、組み込み関数に渡されたオブジェクトを JSON 文字列に変換します。

#### JSON
<a name="intrinsic-function-reference-tojsonstring-example.json"></a>

```
{
//...
    "Transform": "AWS::LanguageExtensions"
    //...
        "Fn::ToJsonString": {
            "key1": "value1",
            "key2": { 
                "Ref": "ParameterName"
            }
        }
//...
}
```

#### YAML
<a name="intrinsic-function-reference-tojsonstring-example.yaml"></a>

```
Transform: 'AWS::LanguageExtensions'
#...
  Fn::ToJsonString: 
    key1: value1
    key2: !Ref ParameterName
#...
```

どちらの例でも、`Ref` から `ParameterName` が `resolvedValue` に解決される場合、この関数は次の JSON 文字列に解決されます。

```
"{\"key1\":\"value1\",\"key2\":\"resolvedValue\"}"
```

### 配列を JSON 文字列に変換する
<a name="intrinsic-function-reference-tojsonstring-example2"></a>

このサンプルスニペットは、組み込み関数に渡された配列を JSON 文字列に変換します。

#### JSON
<a name="intrinsic-function-reference-tojsonstring-example2.json"></a>

```
{
//...
    "Transform": "AWS::LanguageExtensions"
    //...
        "Fn::ToJsonString": [{
            "key1": "value1",
            "key2": { 
                "Ref": "ParameterName" 
            }
        }]
//...
}
```

#### YAML
<a name="intrinsic-function-reference-tojsonstring-example2.yaml"></a>

```
Transform: 'AWS::LanguageExtensions'
#...
  Fn::ToJsonString: 
    - key1: value1
      key2: !Ref ParameterName
#...
```

どちらの例でも、`Ref` から `ParameterName` が `resolvedValue` に解決される場合、この関数は次の JSON 文字列に解決されます。

```
"[{\"key1\":\"value1\"},{\"key2\":\"resolvedValue\"}]"
```

## サポートされている関数
<a name="tojsonstring-supported-functions"></a>

`Fn::ToJsonString` 組み込み関数または配列の中で、次の関数を使用できます。
+ `Fn::Base64`
+ `Fn::FindInMap`
+ `Fn::GetAtt`
+ `Fn::GetAZs`
+ `Fn::If`
+ `Fn::ImportValue`
+ `Fn::Join`
+ `Fn::Length`
+ `Fn::Select`
+ `Fn::Split`
+ `Fn::Sub`
+ `Fn::ToJsonString`
+ `Ref`