gist

2012年6月13日水曜日

CoffeeScriptで学ぶ Underscore.js 07(Array編)

CoffeeScriptで学ぶ Underscore.jsの7回目。Array編の中編です。


flatten

_.flatten(array, [shallow])

flattenは、入れ子になっている配列を1次元配列にして返します。第2引数のshallowをtrueにすると、最初の階層に限定します。

_ = require 'underscore'

list = [1, [2], [3, [[[4]]]]]

console.log _.flatten list
実行結果
$ coffee flatten.coffee 
[ 1, 2, 3, 4 ]

without

_.without(array, [*values])

withoutは、第1引数で指定した配列から、第2引数以降に指定した値を除いた配列を返します。

_ = require 'underscore'

list = [1, 3, 1, 6, 0, 9]

console.log _.without list, 1, 0
実行結果
$ coffee without.coffee 
[ 3, 6, 9 ]

union

_.union(*arrays)

unionは、指定した複数の配列(集合)の和を配列で返します。SQLのUNIONに似ています。

_ = require 'underscore'

console.log _.union ["a", "b", "c"], ["c", "f", "x"], ["b", "y"]

実行結果
$ coffee union.coffee
[ 'a', 'b', 'c', 'f', 'x', 'y' ]

intersection

_.intersection(*arrays)

intersectionは、指定した複数の配列(集合)の積を配列で返します。

_ = require 'underscore'

console.log _.intersection [1,2,4],[4,100,1],[2,4,1,99]
実行結果
$ coffee intersection.coffee 
[ 1, 4 ]

difference

_.difference(array, *others)

differenceは、withoutに似ていますが、第2引数を配列で指定できる点が異なります。第1引数で指定した配列から第2引数以降で指定した配列の要素を除いた配列を返します。

_ = require 'underscore'

console.log _.difference [10,12,14,18,22], [12,22,100]
実行結果
$ coffee difference.coffee 
[ 10, 14, 18 ]

関連ページ

0 件のコメント: