Computer >> 컴퓨터 >  >> 프로그램 작성 >> JavaScript

JavaScript에 동일한 요소가 몇 개 있는지 확인하기 위해 두 배열을 비교하는 방법은 무엇입니까?

<시간/>

두 개의 배열이 있다고 가정해 보겠습니다. 하나는 몇 가지 질문의 정답 문자열을 포함하고 다른 하나는 후보자가 시도한 답변을 포함하지만 어떻게든 배열이 뒤섞여서 현재 해당 순서로 답이 없습니다. 하지만 두 개의 질문에 같은 대답이 있지는 않습니다.

이제 우리의 임무는 이 두 배열을 취하여 공통 요소를 확인하고 그들 사이의 모든 공통 요소를 찾은 다음 공통 답변의 수를 기반으로 후보자의 마크 백분율을 계산하는 함수를 작성하는 것입니다.

이 함수의 코드를 작성해 봅시다 -

예시

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%