UNPKG

ut2

Version:

一个现代 JavaScript 实用工具库。[点击查看在线文档]。

23 lines (20 loc) 690 B
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 };