如何根据位置1去查找到 30:"地产暖场"?
如何根据“地产暖场”去查找到地产暖场的KEY值30?
1、可以使用Object.entries(obj)0获取,但不是很准,因为对象是无序的,哪有位置1这一说法
2、遍历 getKeyByValue(“地产暖场”)
function getKeyByValue(value){
for(let k in obj){
if(obj[k] === value)return k
}
}
需要关注插入顺序的话 应当使用Map对象。Map 会按照插入顺序保持元素的顺序,而Object做不到。
如果是普通对象可以参考其他答案的。。
如果是map查询对于值所属的key可以使用以下代码,会根据插入顺序获得第一个匹配的key
const map = new Map([["a1","a"],["a","a1"],["a2","a1"]])
// 获取第一个元素 空就自己判断吧。。。
map.get(map.keys().next().value)
// 获取匹配的第一个元素。示例代码里面是a1 可以替换为变量
let res = null
map.some((value,key)=>{if(value === "a1")return res = key})
13 回答12.8k 阅读
7 回答1.9k 阅读
3 回答1.1k 阅读✓ 已解决
2 回答1.2k 阅读✓ 已解决
6 回答897 阅读✓ 已解决
6 回答1.1k 阅读
2 回答1.3k 阅读✓ 已解决
第二个如果 val 有多个相同的,只会找到第一个。