ut2
Version:
一个现代 JavaScript 实用工具库。[点击查看在线文档]。
23 lines (20 loc) • 690 B
JavaScript
import allKeys from './allKeys.js';
import { stubTrue } from './internals/helpers.js';
import { objectProtoToString } from './internals/native.js';
function invert(object, predicate) {
if (predicate === void 0) { predicate = stubTrue; }
var _keys = allKeys(object);
var result = {};
_keys.forEach(function (key) {
var value = object[key];
if (predicate(value, key)) {
var valueProp = value != null && typeof value.toString != 'function' ? objectProtoToString.call(value) : value;
result[valueProp] = key;
}
else {
result[key] = value;
}
});
return result;
}
export { invert as default };