timepiece/node_modules/es5-ext/object/map-keys.js

19 lines
408 B
JavaScript

"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;
};