UNPKG

ut2

Version:

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

25 lines (24 loc) 1.08 kB
import { MapKey, MapPredicate, ObjectPredicate, WithNullable } from './internals/types'; interface FindKey { <T extends Map<any, any>>(map: WithNullable<T>, predicate?: MapPredicate<T>): MapKey<T> | undefined; <T extends object, K extends keyof T = keyof T>(object: WithNullable<T>, predicate?: ObjectPredicate<T>): K | undefined; } /** * 查找对象的键。 * * @alias module:Object.findKey * @since 1.13.0 * @param {Object | Map} obj 对象或 Map 对象 * @param {Function} [predicate] 迭代对象自身的可枚举属性(包含 `Symbol` 属性)调用的函数,返回 `Truthy` 表示要查找该值对应的键。 * @returns 如果对象存在要查找的值,返回该值的键,否则返回 `undefined`。 * @example * const obj = { foo: 'bar', baz: 42 } * findKey(obj, isNumber); // 'baz' * findKey(obj, v => typeof v === 'bar'); // 'foo' * * const map = new Map([['foo', 'bar'], ['baz', 42]]); * findKey(map, isNumber); // 'baz' * findKey(map, v => typeof v === 'bar'); // 'foo' */ declare const findKey: FindKey; export default findKey;