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

2つの配列を比較して、JavaScriptに同じ要素がいくつあるかを確認するにはどうすればよいですか?


たとえば、2つの配列があり、1つにはいくつかの質問の正解文字列が含まれ、もう1つには候補者が試行した回答が含まれていますが、どういうわけか配列がシャッフルされ、対応する順序で回答がありません。しかし、2つの質問が同じ答えを持っていなかったことは確かです。

私たちの仕事は、これら2つの配列を受け取り、それらの共通要素をチェックし、それらの間のすべての共通要素を見つけて、共通回答の数に基づいて候補のマークパーセンテージを計算する関数を作成することです。

この関数のコードを書いてみましょう-

const correct = ['India', 'Japan', 56, 'Mount Everest', 'Nile', 'Neil
Armstrong', 'Inception', 'Lionel Messi', 'Joe Biden', 'Vatican City'];
const answered = ['Nile', 'Neil Armstrong', 'Joe Biden', 'Mount Everest',
'Vatican City', 'Inception', 'Japan', 56, 'China', 'Cristiano Ronaldo'];
const findPercentage = (first, second) => {
   const count = first.reduce((acc, val) => {
      if(second.includes(val)){
         return ++acc;
      };
      return acc;
   }, 0);
   return (count / first.length) * 100;
};
console.log(`Candidate have scored ${findPercentage(correct,
answered)}%`);
を獲得しました

出力

コンソールの出力は-

になります
Candidate have scored 80%

  1. JavaScriptで2つの配列を結合する方法は?

    以下は、JavaScriptで2つの配列を結合するコードです- 例 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" /> <title>Document</title> <style>   &

  2. JavaScriptで2つの配列を乗算する方法は?

    以下は、JavaScriptで2つの配列を乗算するコードです- 例 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" /> <title>Document</title> <style>   &