ut2
Version:
一个现代 JavaScript 实用工具库。[点击查看在线文档]。
20 lines (19 loc) • 822 B
TypeScript
import { ObjectPredicate, PropertyName, WithNullable } from './internals/types';
/**
* 创建一个对象,该对象由 `object` 自身可枚举属性(包含 `Symbol` 属性)和值反转组成。
*
* @alias module:Object.invert
* @since 1.8.0
* @see {@link https://developer.mozilla.org/zh-CN/docs/Glossary/Truthy Truthy}
* @param {Object} object 来源对象。
* @param {Function} [predicate] 调用每一个属性的函数,返回 `Truthy` 表示要反转,否则不反转。
* @returns {Object} 新对象。
* @example
*
* invert({ a: 1, b: 2 }); // { 1: 'a', 2: 'b' }
*
* invert({ a: undefined, b: null }); // { undefined: 'a', null: 'b' }
*
*/
declare function invert<T extends object>(object: WithNullable<T>, predicate?: ObjectPredicate<T>): Record<PropertyName, any>;
export default invert;