Title1

Title2

Title3

8-9-2 高階函式

  1. Array.from():從類陣列(array-like)或是可迭代(iterable)物件建立一個新的 Array 實體。
    https://developer.mozilla.org/zh-TW/docs/Web/JavaScript/Reference/Global_Objects/Array/from
    
        function isAtLeastOneChecked(name) {
          let checkboxes = Array.from(document.getElementsByName(name));
          return checkboxes.some(function(item) {
            return item.checked;
          });
        }

     

  2. Array.prototype.some()

    some() 與 every() 非常接近,都是回傳 true or false,差異僅在 every() 需完全符合,some() 僅需要部分符合。
    參考:https://www.casper.tw/javascript/2017/06/29/es6-native-array/#Array-prototype-some
    用來判斷「複選」中至少要選一個
     

    
        function isAtLeastOneChecked(name) {
          let checkboxes = Array.from(document.getElementsByName(name));
          return checkboxes.some(function(item) {
            return item.checked;
          });
        }

     

  3. Array.prototype.filter()
    filter() 會回傳一個陣列,其條件是 return 後方為 true 的物件,很適合用在搜尋符合條件的資料。
    參考:https://www.casper.tw/javascript/2017/06/29/es6-native-array/#Array-prototype-filter
    若原陣列為二維陣列,那回傳也是二維陣列

  4. Array.prototype.find()

    find() 與 filter() 很像,但 find() 只會回傳一次值,且是第一次為 true 的值。

  5. Array.prototype.forEach()

    forEach 是這幾個陣列函式最單純的一個,不會額外回傳值,只單純執行每個陣列內的物件或值。

  6. Array.prototype.map()

    使用 map() 時他需要回傳一個值,他會透過函式內所回傳的值組合成一個陣列。
    如果不回傳則是 undefined
    回傳數量等於原始陣列的長度
    這很適合將原始的變數運算後重新組合一個新的陣列。

  7. Array.prototype.every()

    every() 可以檢查所有的陣列是否符合條件,這僅會回傳一個值 true or false,可以用來檢查陣列中的內容是否符合特定條件。

  8.