關於 Map.getOrInsert()
前言
最近發現 Map 本身有提供取得內容如果沒有的話就自動插入的功能,也就是 Map.getOrInsert() ,在此把學習的過程做個紀錄。
內容
範例如下
let map = new Map(); map.set( 'A' , 1234 ); map.set( 'B' , 5678 ); // console.log( map.get( 'A') );//1234 console.log( map.get( 'a') );//undefined // console.log( map.getOrInsert( 'A' , 9999) );//1234 console.log( map.getOrInsert( 'C' , 9999) );//9999 console.log( map.get( 'C') );//9999
Map.getOrInsert() 的用法只比 Map.get() 多一個引數,也就是當見直不存在要插入的的內容,範例開頭分別示範用 Map.get() 取得存在與不存在的鍵值狀況,接著就是 Map.getOrInsert() 取得已存在鍵值,結果跟 Map.get() ,第二次就取得不存在的鍵值,由於不存在所以會被插入成一個新鍵值,內容就是第二個引數的內容,最後 Map.get() 確認新的鍵值是否有被確實的插入。
沒有留言:
張貼留言