js中通过map的value找key

js中通过map的value找key1.解决ie浏览器的兼容性问题 //通过map的value找key(ps:obj是js中的map对象value就是map中的value) functionfindKey(obj,value,compare){ //匿名函数解决ie不兼容问题 varcompare=(function(a,b){ returna===b; }); //匿名函数解决ie不兼容问题 returnObject.keys(obj).filter

大家好,又见面了,我是你们的朋友全栈君。

1.解决ie浏览器的兼容性问题

	// 通过map的value找key(ps:obj是js中的map对象 value就是map中的value)
  	function findKey (obj,value,compare) { 
   
  		// 匿名函数解决ie不兼容问题
  		var compare = (function(a,b){ 
   
  		    return a === b;
  		});
  		// 匿名函数解决ie不兼容问题
  		return Object.keys(obj).filter(function(k){ 
    // 用filter()方法替代find()方法还是解决ie不兼容问题
  		    return compare(obj[k],value);
  		});
	}

2.直接使用lambda表达式

	// 通过map的value找key(ps:obj是js中的map对象 value就是map中的value)
  	function findKey (obj,value, compare = (a, b) => a === b) { 
   
  		return Object.keys(obj).find(k => compare(obj[k], value))
 	}

值得注意的地方:

1、参数obj就是你的map对象,value就是你要查找key的对应value。

2、调用方式:findKey(map对象,value值),compare参数不用管它。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/163559.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号