---
schema_version: "1"
id: 131847c30576dd820e7bab56a36816c30b318977fc2fde9ecbb8043e0bd2a88b
title: map
collection: mulesoft
version: current
locale: ja-jp
portal_url: https://docs.salesforce.com/mulesoft/current/ja-jp/dataweave/2.6/dw-core-functions-map.md
canonical_url: https://docs.mulesoft.com/jp/dataweave/2.6/dw-core-functions-map
source_site: docs.mulesoft.com
content_type: documentation
content_hash: 247f0657b08c3f904740b2b0880bfa01a7269385c1feb48fa8efaaf9ba1c9349
description: MuleSoft Documentation Site
release: "2.6"
latest: false
---
# map

## [](#map1)map<T, R>(@StreamCapable items: Array<T>, mapper: (item: T, index: Number) -> R): Array<R>

配列の項目を反復処理し、結果を新しい配列に出力します。

### [](#パラメーター)パラメーター

<table class="tableblock frame-all grid-all stretch">
<colgroup>
<col style="width: 25%;">
<col style="width: 75%;">
</colgroup>
<thead>
<tr>
<th class="tableblock halign-left valign-top">名前</th>
<th class="tableblock halign-left valign-top">説明</th>
</tr>
</thead>
<tbody>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>items</code></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">マップする配列。</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>mapper</code></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">各 ​<code>index</code>​ で動作するか、場合によってはその項目の各 ​<code>item</code>​ で動作するために使用する式またはセレクター。</p></td>
</tr>
</tbody>
</table>

### [](#例)例

次の例では、入力配列 (​`["jose", "pedro", "mateo"]`​) を反復処理して DataWeave オブジェクトの配列を生成します。匿名関数 ​`(value, index) → {index: value}`​ は、入力内の各項目をオブジェクトにマップします。 `{index: value}`​ が示すように、入力配列からの各インデックスが出力オブジェクトのキーになり、入力配列の各値がそのオブジェクトの値になります。

#### [](#ソース)ソース

```DataWeave
%dw 2.0
output application/json
---
["jose", "pedro", "mateo"] map (value, index) -> { (index) : value}
```

#### [](#出力)出力

```JSON
[ { "0": "jose" }, { "1": "pedro" }, { "2": "mateo" } ]
```

### [](#例-2)例

次の例では、入力の項目およびインデックスで動作する匿名関数を使用して、入力配列 (​`['a', 'b', 'c']`​) を反復処理します。入力配列の項目ごとに ​`index + 1`​ (​`index`​ プラス 1) をアンダースコア (​`_`​) および対応する ​`value`​ と連結し、配列 ​`[ "1_a", "2_b", "3_c" ]`​ を返します。

#### [](#ソース-2)ソース

```DataWeave
%dw 2.0
output application/json
---
['a', 'b', 'c'] map ((value, index) -> (index + 1) ++ '_' ++ value)
```

#### [](#出力-2)出力

```JSON
[ "1_a", "2_b", "3_c" ]
```

### [](#例-3)例

`mapper`​ (マッパー) 関数のパラメーターが指定されない場合、インデックスは ​`$$`​、値は ​`$`​ で参照できます。次の例では、入力配列 ​`['joe', 'pete', 'matt']`​ の各項目を反復処理し、インデックスがキーとして選択されているオブジェクトの配列を返します。 配列の各項目の値は、返されるオブジェクトの値として選択されます。数値キーを文字列に変換するには、​`$$`​ を引用符で囲む必要があります。

#### [](#ソース-3)ソース

```DataWeave
%dw 2.0
output application/json
---
['joe', 'pete', 'matt'] map ( "$$" : $)
```

#### [](#出力-3)出力

```JSON
[
  { "0": "joe" },
  { "1": "pete" },
  { "2": "matt" }
]
```

### [](#例-4)例

次の例では、オブジェクトのリストを反復処理し、値を CSV に変換します。この各オブジェクトは CSV 行を表します。​`map`​ 操作では、リスト内の各エントリの ​`age`​ と ​`address`​ を使用してオブジェクトを生成します。 `$`​ は反復処理での暗黙的な変数を表します。

#### [](#ソース-4)ソース

```DataWeave
%dw 2.0
output application/csv
---
[{
 "age": 14 ,
 "name": "Claire"
}, {
 "age": 56,
 "name": "Max"
}, {
 "age": 89,
 "name": "John"
}] map {
   age: $.age,
   name: $.name
}
```

#### [](#出力-4)出力

```CSV
age,name
14,Claire
56,Max
89,John
```

## [](#map2)map(@StreamCapable value: Null, mapper: (item: Nothing, index: Nothing) -> Any): Null

`map`​ を ​`null`​ 値に使用できるようにするヘルパー関数。