文章详情页
javascript - Js对象怎么通过value值拿到key值?
浏览:77日期:2023-04-18 14:15:04
问题描述
一般通过obj.key可以拿到value,那我要反过来,该怎么做?
问题解答
回答1:key到value的映射是单向的,并且value并不具有唯一性。 所以由key拿到value是没有问题的,但是反之则不行。
回答2:for...in循环对象判断获取?
回答3:我有个笨方法
遍历对象,判断当前对象的 value 是否等于要查的值,如果匹配到输出key
回答4:输出 value 并不是唯一的,通过 value 拿到可以不行 。
回答5:参考一下,如果用 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.bfindKey(val) // b// 自定义比较函数,比如结合 lodash 可以findKey({a: 98, b: ’str’}, _.isEqual) // d回答6:
能循环拿吗?$.each这样拿出来
标签:
JavaScript
相关文章:
1. python - 如何给模块传参数,参数是模块的函数名?2. node.js - 微信的自动回复问题3. python - Scrapy中xpath用到中文报错4. 微信小程序如何将获取的时间戳提交到数据库?5. javascript - 我写的href跳转地址不是百度,为什么在有的机型上跳转到百度了,有的机型跳转正确6. node.js - nodejs中mysql子查询返回多行结果怎么处理?7. mysql - 为什么innodb下更新A行时B行也被锁住?8. 请问python中为什么我用for循环对嵌套列表进行赋值时,都是以i的最终值来计算的?9. linux - python编译ssl错误10. mysql - spring data jpa 方法sql复杂查询?
排行榜