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)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • kafka 教程_kafka适合以下哪种场景

    kafka 教程_kafka适合以下哪种场景一、基本概念介绍Kafka是一个分布式的、可分区的、可复制的消息系统。它提供了普通消息系统的功能,但具有自己独特的设计。这个独特的设计是什么样的呢?首先让我们看几个基本的消息系统术语:Kafka将消息以topic为单位进行归纳。将向Kafkatopic发布消息的程序成为producers.将预订topics并消费消息的程序成为consumer.Kafka以集群的方式运行,可以由一个或多个服务组成…

    2022年10月17日
    0
  • 基于canoe 新建一个lin工程_canoe canalyzer 区别[通俗易懂]

    基于canoe 新建一个lin工程_canoe canalyzer 区别[通俗易懂]Vector发布了CANoe以及CANalyzer7.5新版本[2010-12-28]CANoe7.5新特性??改进了“Trace”窗口的用户菜单,集成了过滤器,并增加了……例如通过此控件选择配置文件等CANoeNumericUp/DownPanelHelpButtonCANoe、CANalyzerCANoePathDialogPictu…

    2022年6月16日
    29
  • mapminmax 用法[通俗易懂]

    mapminmax 用法[通俗易懂]mapminmax是MATLAB实现归一化的工具包,默认:(1)将矩阵的每行分别进行归一化;(2)每行的最大值最小值作为每行归一化的xmin和xmax;(3)将数据归一化到[-1,1].若要将数据归一化到0到1之间,即y∈[0,1],使用b=mapminmax(a,0,1);若给与确定的最大值和最小值作为每行的xmin和xmax,使用:b= mapminmax(a,0,1);PS.xmin…

    2022年6月30日
    32
  • AjaxPro使用说明【转载】

    AjaxPro使用说明【转载】AjaxPro使用说明    1目录    2修改历史纪录    31、什么是Ajax    42、为什么使用Ajax    43、Ajax应用场景    44、Ajax开发框架    55、AjaxPro说明    66、AjaxPro实例说明    62.1、添加AjaxPro.dll应用    62.2、

    2022年7月15日
    14
  • mac OS 10.15 catalina内录声音同时使用quicktime录屏教程

    mac OS 10.15 catalina内录声音同时使用quicktime录屏教程首先安装BlackHolehttps://github.com/ExistentialAudio/BlackHole其次根据这个教程在MIDI里面设置多输出设备https://github.com/ExistentialAudio/BlackHole/wiki/Multi-Output-Device在多输出设备里面排序使得内建输出排第一个,同时给内建输出和BlackHole都打上勾选…

    2022年5月20日
    42
  • 2004(馬拉)微軟科技教育大會嘅卡拉囌

    2004(馬拉)微軟科技教育大會嘅卡拉囌

    科技 2021年7月21日
    64

发表回复

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

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