JavaScriptで時間文字列を修正する
問題
「HH:MM:SS」形式の時間文字列を受け取るJavaScript関数を作成する必要があります。
しかし、それに加えて問題があり、多くのタイムストリングが壊れているため、MM部分が60を超え、SS部分も60を超える可能性があります。
この関数は、文字列に必要な変更を加えて、修正された新しい文字列を返す必要があります。
たとえば-
"08:11:71" -> "08:12:11"
例
以下はコードです-
const str = '08:11:71'; const rectifyTime = (str = '') => { if(!Boolean(str)){ return str; }; const re = /^(\d\d):(\d\d):(\d\d)$/; if (!re.test(str)){ return null; }; let [h, m, s] = str.match(re).slice(1,4).map(Number); let time = h * 3600 + m * 60 + s; s = time % 60; m = (time / 60 |0) % 60; h = (time / 3600 |0) % 24; return [h, m, s] .map(String) .join(':'); }; console.log(rectifyTime(str));
出力
以下はコンソール出力です-
08:12:11
-
文字列はJavaScriptで繰り返される部分文字列の組み合わせですか
問題 唯一の引数として文字列を受け取るJavaScript関数を作成する必要があります。この関数は、文字列strの部分文字列を取得し、その部分文字列の複数のコピーを一緒に追加することによって、文字列strを作成できるかどうかを確認する必要があります。 たとえば、関数への入力が-の場合 const str = 'thisthisthisthis'; その場合、出力は-になります。 const output = true; 出力の説明: 文字列は「this」文字列を繰り返し追加して作成されるためです。 例 このためのコードは-になります const str = '
-
JavaScriptでスペースの位置を維持しながら文字列を反転する
問題 スペースを含む可能性のある文字列を受け取るJavaScript関数を作成する必要があります。 この関数は、2つの別々の単語の文字やスペースを交換せずに、文字列内に存在する単語を内部的に反転させる必要があります。 例 以下はコードです- const str = 'this is normal string'; const reverseWordsWithin = (str = '') => { let res = ""; for (let i = str.length - 1