Lodash _.findKey() 方法
Lodash 是一个基于 underscore.js 的 JavaScript 库。 Lodash 有助于处理数组、集合、字符串、语言、函数、对象、数字等。
_.findKey() 方法类似于 _.find() 方法,只是它返回第一个元素的键,谓词返回 true for 而不是元素本身。
句法:
_.findKey(object, predicate)
参数:此方法接受上面提到的两个参数,如下所述:
- object:它持有检查每个元素的对象。
- 谓词:它保存方法每次迭代调用的函数。
返回值:此方法返回匹配元素的键否则未定义。
示例一:这里使用 const _ = require('lodash') 来导入文件中的 lodash 库。
// Requiring the lodash library
const _ = require("lodash");
// Original array
var users = {
'meetu': { 'salary': 36000, 'active': true },
'teetu': { 'salary': 40000, 'active': false },
'seetu': { 'salary': 10000, 'active': true }
};
// Using the _.findKey() method
let found_elem = _.findKey(users, function(o) { return
o.salary < 40000; });
// Printing the output
console.log(found_elem);
输出:
meetu
示例 2:
// Requiring the lodash library
const _ = require("lodash");
// Original array
var users = {
'meetu': { 'salary': 36000, 'active': true },
'teetu': { 'salary': 40000, 'active': false },
'seetu': { 'salary': 10000, 'active': true }
};
// Using the _.findKey() method
// The `_.matches` iteratee shorthand
let found_elem = _.findKey(users, { 'salary': 10000,
'active': true });
// Printing the output
console.log(found_elem);
输出:
seetu
示例 3:
// Requiring the lodash library
const _ = require("lodash");
// Original array
var users = {
'meetu': { 'salary': 36000, 'active': true },
'teetu': { 'salary': 40000, 'active': false },
'seetu': { 'salary': 10000, 'active': true }
};
// Using the _.findKey() method
// The `_.matchesProperty` iteratee shorthand
let found_elem = _.findKey(users, ['active', false]);
// Printing the output
console.log(found_elem);
输出:
teetu
示例 4:
// Requiring the lodash library
const _ = require("lodash");
// Original array
var users = {
'meetu': { 'salary': 36000, 'active': true },
'teetu': { 'salary': 40000, 'active': false },
'seetu': { 'salary': 10000, 'active': true }
};
// Using the _.findKey() method
// The `_.property` iteratee shorthand
let found_elem = _.findKey(users, 'active');
// Printing the output
console.log(found_elem);
输出:
meetu
注意:此代码在普通 JavaScript 中不起作用,因为它需要安装库 lodash。