29. array methods

10343 ワード

29. array methods


矢印関数を使用する場合、最も多いのはコールバック関数です.
コールバック関数とは,パラメータとして伝達される関数である.
arrow関数をさらに練習するために、array反復文として使用されるmapおよびforEachの方法を見てみましょう.
  • Array.map()
  • Array.forEach()
  • とてもよく使われる方法です!

    29-1. Array.map()

    mapメソッドは、配列を繰り返します.
    コールバック関数で返される値で、各(各)要素を変更します.mapメソッドの戻り値は、修正された値で再生成される配列である.
    以上の説明はすべてですが、例をさらに理解するには、本ドキュメントをさらに学習するか、参照してください.
    👉 JS Map Function
    const arr = [1, 2, 3];
    const squares = arr.map(x => x * x);
    2行目では、次のように、関数をパラメータmapに変換します.
    const squares = arr.map(function (x) { 
      return x * x;
    });
    Arrayタイプのデータを繰り返します(要素数単位).
    繰り返しのたびに実行する関数をパラメータとして渡します.
    このコールバック関数は、配列内の要素をパラメータ(x)として受け入れます.
    これらの要素を変更する場合は、論理を実装して戻ります.
    インデックス内の要素は、返される値に変換されます.
    左側のコードペインでmap関数をテストしてください.

    29-2. Array.forEach()

    forEachは、forの代わりに使用される反復文である.mapとの大きな違いは、forEach関数自体が何も返されていないことです.forEach関数から抜け出したい場合はreturnを使用します.mapは、要素が変更された場合、新しい配列が返されることを示します.forEachには何の見返りもありません.
    したがって、forEachに渡されたコールバック関数も何も返さない.forEachは、for文ではなく、繰り返しの方法です.
    let startWithNames = [];
    let names = ['a', 'ab', 'cbb', 'ada'];
    
    names.forEach(el => {   
      if (el.startsWith('a')) {     
        startWithNames.push(el);   
      } 
    });
    let hasC = false;
    let arr = ['a', 'b', 'c', 'd'];
    
    arr.forEach(el => {
      if (el === 'c') {
        hasC = true;
        return;
      }
    });
    forEach度の関数なので、真ん中から重複文を脱出したい場合は、return;を作ることができます.forEachindexであることを知りたい場合は、2番目のパラメータを得ることができます.
    let idxOfC = -1;
    let arr = ['a', 'b', 'c', 'd'];
    
    arr.forEach((el, idx) => {
      if (el === 'c') {
        idxOfC = idx;
        return;
      }
    });
    自分で左に書いたんですよね?!
     

    Assignment


    両方の問題はmapメソッドとarrow関数を使用します
     

    1.morethan 100関数を実装してください。


  • 数値からなる配列をパラメータとして受信します.

  • 100以上の場合、

  • 100未満の場合は、要素をtrueに変更して、新しい配列を返します.

  • たとえば、
    nums(input)[100, 9, 30, 7]
    이라면
    
    return[true, false, false, false]
  • 2.formatDate関数を実装してください。


  • パラメータとして日付を含む配列を受信します.

  • 日付のデータ型はstringで、送信される日付型は「YYY-MM-DD」です.

  • 日付フォーマットをYYYY年MM月DD日に変更し、新しい配列を返します.

  • たとえば、
    dates(input)['2019-03-21', '2019-04-21', '2019-05-21']
    이라면
    
    return['2019년 03월 21일', '2019년 04월 21일', '2019년 05월 21일']