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

소수 길이 단어 반전 - JavaScript

<시간/>

공백으로 연결된 문자열을 포함하는 문자열을 받는 JavaScript 함수를 작성해야 합니다. 우리의 함수는 원래 문자열의 모든 단어와 길이가 소수인 단어(예:길이가 2, 3, 5, 7, 100 등인 단어)가 반전된 새 문자열을 만들어야 합니다.

예시

다음은 코드입니다 -

const str = 'His father is an engineer by profession';
// helper functions
const isPrime = n => {
   if (n===1){
      return false;
   }else if(n === 2){
      return true;
   }else{
      for(let x = 2; x < n; x++){
         if(n % x === 0){
            return false;
         }
      }
      return true;
   };
};
const reverseString = str => str.split('').reverse().join('');
const reversePrime = str => {
   return str.split(' ').reduce((acc, val) => {
      const { length } = val;
      if(isPrime(length)){
         acc += reverseString(val)+' ';
      }else{
         acc += val+' ';
      };
      return acc;
   }, '');
};
console.log(reversePrime(str));

출력

다음은 콘솔의 출력입니다 -

siH father si na engineer yb profession