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

JavaScriptで移動の最終的な方向を見つける


問題

最初で唯一の引数として、単一文字の配列arrを受け取るJavaScript関数を作成する必要があります。

配列に含めることができる文字は4文字のみで、-

  • 「N」→北方向を表します
  • 「S」→南方向を表します
  • 「W」→西方向を表します
  • 「E」→東方向を表します

各文字は、その特定の方向への単位距離の移動を指定します。また、配列内のどこかに、[(‘S’と‘N’)または(‘E’と‘W’)]の2つの反対方向が隣接して表示される場合、それらは互いの動きをキャンセルします。したがって、この関数は、結果として生じる配列全体の移動方向を見つけることになっています。

たとえば、関数への入力が-

の場合
const arr = ['N', 'S', 'S', 'E', 'W', 'N', 'W'];

その場合、出力は-

になります。
const output = 'W';

出力の説明

「N」と「S」は互いに打ち消し合い、「E」と「W」は互いに打ち消し合い、最後に「N」と「S」は互いに打ち消し合い、「W」のみを残します。

以下はコードです-

const arr = ['N', 'S', 'S', 'E', 'W', 'N', 'W'];
const cancelDirections = (arr = []) => {

   let str = arr.join('');
   while(str.includes('NS') || str.includes('SN') || str.includes('EW')
|| str.includes('WE')){
      str = str.replace('NS', '');
      str = str.replace('SN', '');
      str = str.replace('EW', '');
      str = str.replace('WE', '');
   };
   return str.split('');
};
console.log(cancelDirections(arr));

出力

以下はコンソール出力です-

['W']

  1. JavaScriptを使用して文字列内の文字のすぐ次の文字を検索する

    問題 文字列strと単一文字charを受け取るJavaScript関数を作成する必要があります。 この関数は、charの各インスタンス(存在する場合)の直後のstrに存在する次の文字を含む新しい文字列を作成する必要があります。 例 以下はコードです- const str = 'this is a string'; const letter = 'i'; const findNextString = (str = '', letter = '') => {    let res = ''

  2. JavaScriptで時間文字列を修正する

    問題 「HH:MM:SS」形式の時間文字列を受け取るJavaScript関数を作成する必要があります。 しかし、それに加えて問題があり、多くのタイムストリングが壊れているため、MM部分が60を超え、SS部分も60を超える可能性があります。 この関数は、文字列に必要な変更を加えて、修正された新しい文字列を返す必要があります。 たとえば- "08:11:71" -> "08:12:11" 例 以下はコードです- const str = '08:11:71'; const rectifyTime = (str = '&#