1. daijiro_maeyama

    No comment

    daijiro_maeyama
Changes in body
Source | HTML | Preview
@@ -1,32 +1,42 @@
`"[\"1\", \"2\"]"`みたいなデータを`[1, 2]`みたいな普通の配列のデータにしたいときに自分用のメモとして書きたいと思います。
```rb
json = "[\"1\", \"2\"]"
array = JSON.parse(json) #=> ["1", "2"]
```
すると、`array`は
```rb
array #=> ["1", "2"]
```
みたいなデータになります。これを`map`を使えば、`[1, 2]`というデータに変換できます。
```rb
array.map{|id| id.to_i} #=> [1, 2]
```
これをまとめて1行で書くと下記みたいになりますね。
```rb
JSON.parse(json).map{|id| id.to_i} #=> [1, 2]
```
## 追記
下記のコメントで初めて知ったのですが、`map`のところでもっと簡単にかけます。
```rb
JSON.parse(json).map(&:to_i) #=> [1, 2]
```
+
+ちなみに、ブロックの代わりに **&:メソッド名** という引数を渡せる条件は、
+
+```
+・ブロック引数が1個である
+・ブロックの中で呼び出すメソッドには引数がない
+・ブロックの中では、ブロック引数に対してメソッドを1回呼び出す以外の処理がない
+```
+
+です。