三叔2017-06-30 10:00:56
参考一下,如果用 lodash 可以直接用 _.findKey
var data = {
a: 1,
b: 'string',
c: {},
d: {a: 98, b: 'str'}
}
function findKey (value, compare = (a, b) => a === b) {
return Object.keys(data).find(k => compare(data[k], value))
}
var val = data.b
findKey(val) // b
// 自定义比较函数,比如结合 lodash 可以
findKey({a: 98, b: 'str'}, _.isEqual) // d