summaryrefslogtreecommitdiff
path: root/tools/eslint/node_modules/escope/node_modules/es6-map/node_modules/es5-ext/object/filter.js
blob: e5edb49b1b1610623e60d0ac8c6fa50bcbd3ab9e (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
'use strict';

var callable = require('./valid-callable')
  , forEach  = require('./for-each')

  , call = Function.prototype.call;

module.exports = function (obj, cb/*, thisArg*/) {
	var o = {}, thisArg = arguments[2];
	callable(cb);
	forEach(obj, function (value, key, obj, index) {
		if (call.call(cb, thisArg, value, key, obj, index)) o[key] = obj[key];
	});
	return o;
};