You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

18 lines
408 B

"use strict";
var callable = require("./valid-callable")
, forEach = require("./for-each")
, call = Function.prototype.call;
module.exports = function (obj, cb /*, thisArg*/) {
var result = {}, thisArg = arguments[2];
callable(cb);
forEach(
obj,
function (value, key, targetObj, index) {
result[call.call(cb, thisArg, key, value, this, index)] = value;
},
obj
);
return result;
};