schangxiang@126.com
2025-09-19 0821aa23eabe557c0d9ef5dbe6989c68be35d1fe
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
"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;
};