を見つけた。
http://gihyo.jp/dev/serial/01/underscorejs/0002
全部じゃないけどわかりやすい。
inArrayのような感じ。
_.contains([1, 2, 3], 3); // true
メモ。
var test = [{a: 1},{b: 2}];
var test2 = [{a: 1}];
_.filter(test, function(obj){ return !_.findWhere(test2, obj); });
めっちゃ便利ぃぃ。
ので、もしbreakしたい場合は_.someか_.everyを使えばOK。
例えば下記のようなjsonオブジェクトでIDが5の要素のみ削除したいといった場合。
var oldJson = [
{id: 1, name: 'taro', age: 14},
{id: 2, name: 'yamada', age: 15},
{id: 3, name: 'emily', age: 16},
{id: 4, name: 'bob', age: 17},
{id: 5, name: 'hanako', age: 18}
];
_.filter()メソッドを用いると便利。
var newJson = _.filter(oldJson, , function(data) {
return data.id != 5;
})
これでID5のオブジェクトを削除することが出来る。
メモ。
例えばサーバーから下記のようなjsonが返ってきたとして。
[
{
"id": 1,
"name": "taro",
"age": 16
},
{
"id": 2,
"name": "hanako",
"age": 18
},
{
"id": 3,
"name": "bob",
"age": 20
},
]
IDと名前のマスタを生成したい場合、下記のように生成することが出来る。
// dataは上記のjsonオブジェクト
var master = _.object(_.pluck(data, 'id'), _.pluck(data, 'name'))
// => {"1": "taro", "2": "hanako", "3": "bob"}
underscoreさん便利っすわー。
Underscore.jsを拡張した超便利ライブラリを見つけたのでメモ。
基本的にUnderscore.jsと同じ文法で使えて、色々と便利メソッドが追加されたイメージ。
おまけに動作までUnderscore.jsよりも速いらしい。
これは便利だね。
めも。
var obj = {};
var arr = [];
var val = '';
console.log(_.isEmpty(obj));
console.log(_.isEmpty(arr));
console.log(_.isEmpty(val));
// true
// true
// true