定義:map()方法 陣列中的元素為:原始陣列元素呼叫函式處理後的值,並且 按照原始陣列元素順序依次窗戶裡元素
作用:map資料結構是為了解決物件無法使用非字串作為鍵而提出的資料結構。
從本質上講,map是乙個二維陣列,其中陣列元素是只含有兩個元素的陣列,這兩個元素按順序分別為鍵和值。
如var m = new map([[x, 1], [y, 2]]);實際上,最常用的形式是把物件作為鍵,物件相關的資訊作為值來儲存在map中。
map的基本寫法::map.set(key,value);
示例:
set(key)方法:是給map集合設定鍵值對元素1.
var persons = new map();
persons .set("name","張三");
persons .set("age",22);
persons .set("gender","男");
console.log(persons);
列印結果為:
2.var arr=[
["name","張三"],
["age",15],
["gender","男"],
["girlfriend","rose"]
]var map=new map();
arr.foreach(([key,value]) =>
)列印結果為: console.log(map); //
向map資料中新增乙個鍵值,如果有,則會被更新
引數1:鍵
引數2:值
get(key)方法:是 獲取 map集合的指定鍵的值
獲取map資料中對應的鍵值,沒有則返回undefined
has():查:判斷map中是否有這個鍵值,
有就返回true,沒有就返回false
返回值:布林型別
delete():刪除:刪除map中對應的值(與clear不同)
有就返回true,沒有就返回false
返回值:布林型別
.clear:清除:清空集合裡所有的元素(寫了這個就是什麼都沒了) 無參 無返回值
map集合轉陣列::var res = [...map集合];
合併多個陣列:var arr = [陣列名1.concat(陣列名2)];
1.for-of遍歷:
語法:
和解構相結合,更符合語義化、取值方便for(var item of map)
const p= new map([["name","張三"],["age",22],["***","男"]])
for (let key of p)
語法:
for(var [key,value] of map)
2.(foreach)遍歷:
語法:
注意:map.foreach((value,key,self) => )
p.foreach((value, key, map) => );
列印結果:
張三 name map(3)
22 age map(3)
男 *** map(3)
該方法不會對空陣列進行檢測
特點是 :不會改變原始陣列
返回值: 返回乙個新陣列
例如:返回乙個陣列,陣列中元素為原始商戶組中的平方根
案例1:var arr= [4,9,16,25];
function mys()
求下列陣列的交集,並集,差集
案例2:var arr1 = [19, 69, 67, 58, 26, 67];
var arr2 = [18, 79, 58, 99, 67, 79, 67];
//交集
var cross= [...new set(arr1)].filter(item => arr2.indexof(item) >= 0);
console.log(cross);
列印結果:[67, 58]
//並集
var all= [...new set([...arr1, ...arr2])];
console.log(all);
列印結果:[19, 69, 67, 58, 26, 18, 79, 99]
//差集
var down= all.filter(item => cross.indexof(item) < 0);
console.log(down);
列印結果:[19, 69, 26, 18, 79, 99]
陣列去重:
案例3:var arr1=["aaa","bbb","ccc","aaa","ccc"];
var arr2=arr1.filter(function(item,index,arr))
console.log(arr2);
列印結果:["aaa", "bbb", "ccc"]
刪除陣列中的空字串
注意::元素前後的空格需要遍歷刪除,這個只能刪除陣列中的空字串var arr=[14,25,356,23," "," 56",12];
var res=arr.filter(function(item));
console.log(res);
列印結果:[14, 25, 356, 23, "56", 12]
list 型別轉換 以及其他應用
型別轉換一般方法 list轉listlistlist new arraylist list.add 1 list.add 2 liststrings lists.transform list,new function system.out.println strings.tostring list轉...
要點及其他
類的載入順序 1.靜態屬性和靜態塊 按書寫順序 2.非靜態屬性和非靜態塊 按書寫順序 3.構造方法 4.被呼叫的方法 無論靜態非靜態 使android應用國際化的步驟 1.新建android xml file 2.選擇type為values 3.選擇語言碼和區域碼,語言碼設定為en或zh 區域碼設定...
日誌及其他
spring5框架自帶了通用的日誌封裝。spring5移除了log4jconfiglistener,官方建議使用log4j2,因為框架整合了log4j2.nullable 註解可以使用在方法上,屬性上和引數前,表示方法返回值可以為空,屬性值可以為空,引數值可以為空。spring5能以函式式風格建立物...