是否可以從地圖中過濾空值?
const myMap = new Map<string, string|undefined>([
['id1', 'value1'],
['id2', null],
['id3', 'value3'],
['id4', null],
]);
我只希望我的地圖具有 id1 和 id4,因為其他 id 具有空值。
謝謝
uj5u.com熱心網友回復:
您可以使用.filter():
const myMapFiltered = new Map([...myMap].filter(([key, value]) => value));
或者,如果您想就地過濾:
for (let k of myMap.keys()) {
if (!myMap.get(k))
myMap.delete(k);
}
uj5u.com熱心網友回復:
您可以轉換為陣列,過濾并再次創建地圖:
const myMap = new Map([
['id1', 'value1'],
['id2', null],
['id3', 'value3'],
['id4', null],
]);
const res = new Map(Array.from(myMap).filter(val => val[1]))
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/534511.html
標籤:javascript字典
