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

JavaScript에서 문자열을 NATO 음성 알파벳으로 변환

<시간/>

문제

문자열을 가져와 NATO 음성 알파벳으로 변환하는 JavaScript 함수를 작성해야 합니다.

26개의 코드워드는 알파, 브라보, 찰리, 델타, 에코, 폭스트롯, 골프, 호텔, 인도, 줄리엣, 킬로, 리마, 마이크, 11월, 오스카, 파파, 퀘벡, 로미오, 시에라, 탱고, 유니폼, Victor, Whisky, X-ray, Yankee, Zulu.

예시

다음은 코드입니다 -

const str = 'this is simple string';
const convertToNato = (str = '') => {
   let nato = {
      a: 'Alfa',
      b: 'Bravo',
      c: 'Charlie',
      d: 'Delta',
      e: 'Echo',
      f: 'Foxtrot',
      g: 'Golf',
      h: 'Hotel',
      i: 'India',
      j: 'Juliett',
      k: 'Kilo',
      l: 'Lima',
      m: 'Mike',
      n: 'November',
      o: 'Oscar',
      p: 'Papa',
      q: 'Quebec',
      r: 'Romeo',
      s: 'Sierra',
      t: 'Tango',
      u: 'Uniform',
      v: 'Victor',
      w: 'Whiskey',
      x: 'Xray',
      y: 'Yankee',
      z: 'Zulu'
   }
   let arr = [...str];
   return arr
   .filter((letter) => letter !== " ")
   .map((letter) => {
      if( /[^a-z]/.test(letter.toLowerCase()) ) { return letter }
      else { return nato[letter.toLowerCase()]; }
   }).join(' ');
};
console.log(convertToNato(str));

출력

다음은 콘솔 출력입니다 -

Tango Hotel India Sierra India Sierra Sierra India Mike Papa Lima Echo Sierra Tango Romeo India November Golf