

这是新的《CloudFormation 模板参考指南》**。请更新您的书签和链接。有关开始使用 CloudFormation 的帮助，请参阅《AWS CloudFormation 用户指南》[https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/Welcome.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/Welcome.html)。

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

内部函数 `Fn::Length` 返回数组或返回数组的内部函数中元素的数量。

**重要**  
必须使用 [`AWS::LanguageExtensions` 转换](transform-aws-languageextensions.md) 才能使用 `Fn::Length` 内置函数。

## 声明
<a name="length-declaration"></a>

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

```
{ "Fn::Length" : IntrinsicFunction }
```

```
{ "Fn::Length" : Array }
```

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

```
Fn::Length : IntrinsicFunction
```

```
Fn::Length : Array
```

## 参数
<a name="length-parameters"></a>

`IntrinsicFunction`  
返回要从中返回多个元素的数组的内部函数。

`Array`  
要从中返回元素数的数组。

## 返回值
<a name="intrinsic-function-reference-length-return"></a>

返回数组的内部函数中或传递给内部函数的数组中的元素数量。

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

### 返回返回数组的内部函数中的元素数量
<a name="intrinsic-function-reference-length-example-subsection"></a>

此示例代码段返回返回数组的内部函数中的元素数量。函数返回 3。

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

```
{
//...
    "Transform": "AWS::LanguageExtensions"
    //...
        "Fn::Length" : {
            "Fn::Split": ["|", "a|b|c"]
        }
//...
}
```

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

```
Transform: 'AWS::LanguageExtensions'
#...
  Fn::Length: 
    !Split ["|", "a|b|c"]
#...
```

### 返回引用列表参数类型的 Ref 内部函数中的元素数量
<a name="intrinsic-function-reference-length-example2"></a>

此示例代码段返回引用列表参数类型的 `Ref` 内部函数中的元素数量。如果名为 `ListParameter` 的参数是含有 3 个元素的列表，则该函数返回 3。

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

```
{
//...
    "Transform": "AWS::LanguageExtensions"
    //...
        "Fn::Length": {
            "Ref": "ListParameter"
        }
//...
}
```

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

```
Transform: 'AWS::LanguageExtensions'
#...
  Fn::Length: 
    !Ref ListParameter
#...
```

### 返回数组中的元素数量
<a name="intrinsic-function-reference-length-example3"></a>

此示例代码段返回传递给内部函数的数组中的元素数量。函数返回 3。

#### JSON
<a name="intrinsic-function-reference-length-example3.json"></a>

```
 1. {
 2. //...
 3.     "Transform": "AWS::LanguageExtensions"
 4.     //...
 5.         "Fn::Length": [
 6.             1,
 7.             {"Ref": "ParameterName"}, 
 8.             3
 9.         ]
10. //...
11. }
```

#### YAML
<a name="intrinsic-function-reference-legnth-example3.yaml"></a>

```
Transform: 'AWS::LanguageExtensions'
#...
  Fn::Length: 
    - 1
    - !Ref ParameterName
    - 3
#...
```

## 支持的函数
<a name="length-supported-functions"></a>

您可以在 `Fn::Length` 内部函数或数组中使用以下函数：
+ `Condition Functions`
+ `Fn::Base64`
+ `Fn::FindInMap`
+ `Fn::Join`
+ `Fn::Length`
+ `Fn::Select`
+ `Fn::Split`
+ `Fn::Sub`
+ `Fn::ToJsonString`
+ `Ref`