JavaScript判斷、循環、Map、Set


 本文是筆者在看廖雪峰老師JavaScript教程時的個人總結
     一些判斷條件
                JavaScript把 nullundefined0NaN和空字符串 ''視為 false,其他值一概視為 true,因此上述代碼條件判斷的結果是 true
 
   循環
         1.for(同C)
          2.while (同C)
           3.do while(同C)
       變體  for...in
               遍歷對象  只遍歷屬性,沒有屬性對應的值
               遍歷數組  只遍歷索引  遍歷索引的結果是字符串不是numble 不是1 是'1'
               so 數組也是對象,索引值是其屬性
 
 
 
     map
           Map是一組鍵值對的結構,具有極快的查找速度。
                     初始化 Map需要一個二維數組,或者直接初始化一個空 Map
            map方法  1.get(鍵)  得到值
                     2.set(鍵:值)  添加一個元素
                     3.has(鍵)   查找是否含有這個鍵   返回true  false
                     4.delete(鍵)  刪除這個鍵
            一個key只能對應一個value,所以,多次對一個key放入value,后面的值會把前面的值沖掉   
 
 
        set
              set是一組key的集合,但不包含value。而且key不能重復
               重復元素自動被過濾掉
               通過add()添加key
               通過delete()刪除key
 
 
 
 
          iterable
               這是一個類型
               首先 遍歷數組可以采用下標循環,但是遍歷map和set就無法使用下標。so 為了統一iterable應景而生,array,map,set都屬於iterable類型
               屬於iterable類型的集合可以使用for....of...循環來遍歷
               遍歷 array set  值對值
               遍歷 map  x[0]:鍵  x[1]:值
                
 
 
 
 
 
               for...in   和   for...of區別
                     for...in遍歷的是對象的屬性名稱
                                       for...of遍歷的是對象的值     
                                       for...of只遍歷集合的本身,后期加入的屬性不進行遍歷
                         放大招  :  iterable內置一個forEach方法,它接收一個函數,每次迭代就自動回調該函數
                                        例子:
var a = ['A', 'B', 'C'];
a.forEach(function (element, index, array) {
    // element: 指向當前元素的值
    // index: 指向當前索引
    // array: 指向Array對象本身
    alert(element);
});
                                      function (element, index, array) 這是一個匿名函數       三個參數名字自己定義  不過forEach傳入參數的順序是確定的,且分別代表的也是確定的。每向下迭代一次就執行該函數一次
                                       Map的回調函數參數依次為 valuekeymap本身
                     set的回調函數參數依次為 element 、sameE lement 和set本身    
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM