我需要知道连接状态是否!== null:
this.filters = new Map([
['destinationGeoId', null],
['locationGeoId', null],
['nationalityId', null],
['travelType', null],
['connectionStatus', null]
])
如果我执行console.log过滤器,我会得到这个。
Map(5) {"destinationGeoId" => null, "locationGeoId" => null, "nationalityId" => null, "travelType" => null, "connectionStatus" => null}
size
:
(...)
__proto__
:
Map
[[Entries]]
:
Array(5)
0
:
{"destinationGeoId" => null}
1
:
{"locationGeoId" => null}
2
:
{"nationalityId" => null}
3
:
{"travelType" => null}
4
:
{"connectionStatus" => null}
length
:
5
我无法使用hasOwnProperty。我可以使用this.filters.values('connectionStatus')
,但如果密钥存在,那只会给我真实,但我想要这个值。
答案 0 :(得分:2)
好吧,创建一个函数来评估一个键是否有值。
这只是一个比较特定键值的函数。
var filters = new Map([
['destinationGeoId', null],
['locationGeoId', null],
['nationalityId', null],
['travelType', null],
['connectionStatus', null]
]);
var hasValue = function(key) {
return filters.get(key) != null;
};
console.log(hasValue('connectionStatus'));

请参阅?评估返回false
,因为connectionStatus
是null
。
如Sterling Archer所示,您可以使用Map.prototype.get()
函数获取特定密钥的值。
答案 1 :(得分:0)
试试
this.filters.get('connectionStatus') !== null