Javascript
 Computer >> コンピューター >  >> プログラミング >> Javascript

JavaScriptで配列をグループに減らす


このような重複エントリを含む文字列の配列があるとします-

const arr = ['blue', 'blue', 'green', 'blue', 'yellow', 'yellow', 'green'];

そのような配列を1つ取り込むJavaScript関数を作成する必要があります。この関数は、重複するすべてのエントリを相互にマージする必要があります。

したがって、上記の入力の出力は次のようになります-

const output = ['blueblue', 'green', 'blue', 'yellowyellow', 'green'];

このためのコードは-

になります
const arr = ['blue', 'blue', 'green', 'blue', 'yellow', 'yellow',
'green'];
const combineDuplicate = (arr = []) => {
   let prev = null;
   const groups = arr.reduce((acc, value) => {
      if (prev === value) {
         acc[acc.length - 1] += value;
      } else {
         prev = value
         acc.push(value)
      }
      return acc;
   }, [])
   return groups;
};
console.log(combineDuplicate(arr));

出力

そして、コンソールの出力は-

になります
[ 'blueblue', 'green', 'blue', 'yellowyellow', 'green' ]

  1. JavaScriptの配列reverse()

    JavaScript配列reverse()関数は、配列内の要素の順序を逆にします 以下は、配列のreverse()関数のコードです- 例 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" /> <title>Document&

  2. JavaScriptでの配列の分解。

    破棄すると、配列から値が解凍されます。以下は、JavaScriptでの配列の非構造化のコードです- 例 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" /> <title>Document</title> <