繁体   English   中英

如何有效地检查Javascript“词典”对象中是否存在键值对

[英]How to efficiently check if a Key Value pair exists in a Javascript “dictionary” object

鉴于:

        var dic = {1: 11, 2: 22}

如何测试是否存在(1,11)?

大多数时候非常简单,有

if (dic[1] === 11)

有一点需要注意:如果您要查找的值undefined则不会这样做,因为它无法区分{ 1: undefined }{} 在这种情况下,您需要更详细的测试

if ('1' in dic && dic[1] === undefined)

如果你需要检查密钥是否存在,并且有一个值,那么下面的代码最好:

function hasKeySetTo(obj,key,value)
{
    return obj.hasOwnProperty(key) && obj[key]==value;
}

如果obj具有名为key并且该键具有value作为其值,则它仅返回true。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM