JavaScriptで現在の時刻を使用して最も近い時刻を作成する
問題
「HH:MM」形式で時間を表す文字列timeを受け取るJavaScript関数を作成する必要があります。
私たちの関数は、現在の数字を再利用することにより、次に近い時間を形成することになっています。 1桁を再利用できる回数に制限はありません。
たとえば、関数への入力が
入力
const time = '19:34';
出力
const output = '19:39';
出力の説明
数字1、9、3、4から選択する次に近い時刻は19:39で、これは5分後に発生します。これは23時間59分後に発生するため、19:33ではありません。
例
以下はコードです-
const time = '19:34'; const findClosestTime = (time = '') => { const [a, b, c, d] = [time[0], time[1], time[3], time[4]].map(x =>Number(x)); const sorted = [a, b, c, d].sort((x, y) => x - y) const d2 = sorted.find(x => x > d) if (d2 > d) { return `${a}${b}:${c}${d2}` } const c2 = sorted.find(x => x > c && x <= 5) const min = Math.min(a, b, c, d) if (c2 > c) { return `${a}${b}:${c2}${min}` } const b2 = sorted.find(x => x > b && a * 10 + x <= 24) if (b2 > b) { return `${a}${b2}:${min}${min}` } const a2 = sorted.find(x => x > a && x <= 2) if (a2 > a) { return `${a2}${min}:${min}${min}` } return `${min}${min}:${min}${min}` }; console.log(findClosestTime(time));
出力
19:39
-
「new」演算子を使用してJavaScriptコンストラクターを作成しますか?
以下は、「new」演算子を使用してJavaScriptコンストラクターを作成するためのコードです- 例 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" /> <title>Document</title> <
-
JavaScriptで時間文字列を修正する
問題 「HH:MM:SS」形式の時間文字列を受け取るJavaScript関数を作成する必要があります。 しかし、それに加えて問題があり、多くのタイムストリングが壊れているため、MM部分が60を超え、SS部分も60を超える可能性があります。 この関数は、文字列に必要な変更を加えて、修正された新しい文字列を返す必要があります。 たとえば- "08:11:71" -> "08:12:11" 例 以下はコードです- const str = '08:11:71'; const rectifyTime = (str = '