オブジェクト関数 原文
keys _.keys(object)
原文
object のプロパティ名を全て探索する。
_.keys({one : 1, two : 2, three : 3});
=> ["one", "two", "three"]
values _.values(object)
原文
object のプロパティの値を全て返す。
_.values({one : 1, two : 2, three : 3});
=> [1, 2, 3]
pairs _.pairs(object)
原文
objectを [key, value]
のペアになっているリストに変換する。
_.pairs({one: 1, two: 2, three: 3});
=> [["one", 1], ["two", 2], ["three", 3]]
invert _.invert(object)
原文
キーを値に、値をキーにした object のコピーを返す。 この関数が機能するためには、オブジェクトのすべての値がユニークでシリアライズ可能な文字列である必要があります。
_.invert({Moe: "Moses", Larry: "Louis", Curly: "Jerome"});
=> {Moses: "Moe", Louis: "Larry", Jerome: "Curly"};
functions _.functions(object)
Alias: methods 原文
オブジェクトの全てのメソッド名のソートされたリストを返します。 すなわち、オブジェクトの全ての関数のプロパティ名のことです。
_.functions(_);
=> ["all", "any", "bind", "bindAll", "clone", "compact", "compose" ...
extend _.extend(destination, *sources)
原文
source オブジェクトの全プロパティを destination オブジェクトにコピーして、 destination オブジェクトを返します。 整理すると、二つめの引数の source は一つめの引数にある同じ名前のプロパティを上書きします。
_.extend({name : 'moe'}, {age : 50});
=> {name : 'moe', age : 50}
pick _.pick(object, *keys)
原文
ホワイトリストとして指定したキー(もしくは有効なキーの配列)の値だけ持つようにフィルタリングした object のコピーを返します。
_.pick({name : 'moe', age: 50, userid : 'moe1'}, 'name', 'age');
=> {name : 'moe', age : 50}
omit _.omit(object, *keys)
原文
ブラックリストとして指定したキー(もしくはキーの配列)を省略するようにフィルタリングした object のコピーを返します。
_.omit({name : 'moe', age : 50, userid : 'moe1'}, 'userid');
=> {name : 'moe', age : 50}
defaults _.defaults(object, *defaults)
原文
defaults オブジェクトにある値を object のnullとundefinedのプロパティに挿入し、その object を返します。 プロパティが挿入され次第、以降のdefaults引数は影響を受けません。
var iceCream = {flavor : "chocolate"};
_.defaults(iceCream, {flavor : "vanilla", sprinkles : "lots"});
=> {flavor : "chocolate", sprinkles : "lots"}
clone _.clone(object)
原文
object の浅いコピーをしたクローンを作成します。 ネストされたオブジェクトや配列は参照によるコピーで、複製されたものではありません。
_.clone({name : 'moe'});
=> {name : 'moe'};
tap _.tap(object, interceptor)
原文
interceptor に 割り込み処理 を差し込んでから object を返します。 このメソッドの主な目的は、チェーン内の途中の結果を操作するためにメソッドチェーンを利用することです。
_.chain([1,2,3,200])
.filter(function(num) { return num % 2 == 0; })
.tap(alert)
.map(function(num) { return num * num })
.value();
=> // [2, 200] (alerted)
=> [4, 40000]
has _.has(object, key)
原文
objectに渡されたキーが含まれているかチェックします。
object.hasOwnProperty(key)
と同じですが、誤って上書きされる 場合がある hasOwnProperty
関数への参照を安全に行えます。
_.has({a: 1, b: 2, c: 3}, "b");
=> true
isEqual _.isEqual(object, other)
原文
等しいものとするべきかどうか判断するために、2つのオブジェクト間で最適化された深い比較を行います。
var moe = {name : 'moe', luckyNumbers : [13, 27, 34]};
var clone = {name : 'moe', luckyNumbers : [13, 27, 34]};
moe == clone;
=> false
_.isEqual(moe, clone);
=> true
isEmpty _.isEmpty(object)
原文
object に値が含まれていない場合、 true を返します。
_.isEmpty([1, 2, 3]);
=> false
_.isEmpty({});
=> true
isElement _.isElement(object)
原文
object がDOM要素の場合、 true を返します。
_.isElement(jQuery('body')[0]);
=> true
isArray _.isArray(object)
原文
object が配列の場合、 true を返します。
(function(){ return _.isArray(arguments); })();
=> false
_.isArray([1,2,3]);
=> true
isObject _.isObject(value)
原文
value がオブジェクトの場合、 true を返します。 注:JavaScriptの配列と関数はオブジェクトで、(普通の)文字列や整数はオブジェクトではありません。
_.isObject({});
=> true
_.isObject(1);
=> false
isArguments _.isArguments(object)
原文
object がArgumentsオブジェクトの場合、 true を返します。
(function(){ return _.isArguments(arguments); })(1, 2, 3);
=> true
_.isArguments([1,2,3]);
=> false
isFunction _.isFunction(object)
原文
object が関数の場合、 true を返します。
_.isFunction(alert);
=> true
isString _.isString(object)
原文
object が文字列の場合、 true を返します。
_.isString("moe");
=> true
isNumber _.isNumber(object)
原文
object が整数(NaN
を含む)の場合、 true を返します。
_.isNumber(8.4 * 5);
=> true
isFinite _.isFinite(object)
原文
object が有限数の場合、 true を返します。
_.isFinite(-101);
=> true
_.isFinite(-Infinity);
=> false
isBoolean _.isBoolean(object)
原文
object が true か false のどちらかの場合、 true を返します。
_.isBoolean(null);
=> false
isDate _.isDate(object)
原文
object が日付オブジェクトの場合、 true を返します。
_.isDate(new Date());
=> true
isRegExp _.isRegExp(object)
原文
object が正規表現オブジェクトの場合、 true を返します。
_.isRegExp(/moe/);
=> true
isNaN _.isNaN(object)
原文
object が NaN の場合、 true を返します。 注:この関数は、変数が undefined の時に true が返される組み込みの isNaN 関数と同じではありません。
_.isNaN(NaN);
=> true
isNaN(undefined);
=> true
_.isNaN(undefined);
=> false
isNull _.isNull(object)
原文
objectの 値 が null の場合、 true を返します。
_.isNull(null);
=> true
_.isNull(undefined);
=> false
isUndefined _.isUndefined(value)
原文
value が undefined の場合、 true を返します。
_.isUndefined(window.missingVariable);
=> true