回転のタイムスタンプの形式を達成するために、コードの行

https://segmentfault.com/a/1190000015992232?utm_source=tag-newest

 

 

関数時間(時間= +新しいDate()){
VAR日=新しい日付(時間+ 8×1000 * 3600);
。date.toJSONを返す()SUBSTR(0、19).replace( 'T'、 ' ').replace('/ - / G'、 '');
}
にconsole.log(時間())。

 

 

フロントエンドの開発プロセスは、多くの場合、閲覧するユーザーのための標準時間のタイムスタンプ形式に変換する必要があります。メソッドライブラリの助けを借りずに、より速く、より良いどのようにそれを達成するには?ここでは、2つの方法があります。

古い方法

通常の方法を順番日一つずつ分ごとに計算された日付により、実質上、このメソッドを使用して、フォーマット文字列に必要な時間内にスプライシング。

function transformTime(timestamp = +new Date()) { if (timestamp) { var time = new Date(timestamp); var y = time.getFullYear(); //getFullYear方法以四位数字返回年份 var M = time.getMonth() + 1; // getMonth方法从 Date 对象返回月份 (0 ~ 11),返回结果需要手动加一 var d = time.getDate(); // getDate方法从 Date 对象返回一个月中的某一天 (1 ~ 31) var h = time.getHours(); // getHours方法返回 Date 对象的小时 (0 ~ 23) var m = time.getMinutes(); // getMinutes方法返回 Date 对象的分钟 (0 ~ 59) var s = time.getSeconds(); // getSeconds方法返回 Date 对象的秒数 (0 ~ 59) return y + '-' + M + '-' + d + ' ' + h + ':' + m + ':' + s; } else { return ''; } } transformTime(); // "2018-8-8 12:9:12"

古い方法の改良版

上記変換方法は、この方法は、タイムスタンプの日付インスタンスに変換され、時間の形式を得るために、瞬間に対応する対応取得した日付を使用する場合は「2018-8-812:9:12」であり、多少厄介に見えました。私たちの共通の時間形式の変換のために、また、10未満の値に注目される、「0」の前に文字列を追加し、「2018年8月8日12時09分12秒」は、この時刻形式に変換されます。

function transformTime(timestamp = +new Date()) { if (timestamp) { var time = new Date(timestamp); var y = time.getFullYear(); var M = time.getMonth() + 1; var d = time.getDate(); var h = time.getHours(); var m = time.getMinutes(); var s = time.getSeconds(); return y + '-' + addZero(M) + '-' + addZero(d) + ' ' + addZero(h) + ':' + addZero(m) + ':' + addZero(s); } else { return ''; } } function addZero(m) { return m < 10 ? '0' + m : m; } transformTime(); // "2018-08-08 12:09:12"

処理の戻り時に10未満の値、フォーマットが対称「addZero」メソッドで使用するように文字列を追加して、「0」。

新しいアイデア

我々は時間を必要とするタイムスタンプ形式を変換するために、我々は、十数行まで追加、二つの機能を書きました。、時間の形式でフォーマットコードを合理化の突然多くを上げ、あまり話をしなかったいくつかの時間前、部長は、コード補完のタイムスタンプは、「:MM:SS YYYY-MM-DD HH」に変換さのラインを別の方法を語りましたコード

function time(time = +new Date()) { var date = new Date(time + 8 * 3600 * 1000); // 增加8小时 return date.toJSON().substr(0, 19).replace('T', ' '); } time(); // "2018-08-09 18:25:54"

「toJSON」メソッドJSON形式の文字列GMT、「toISOString」メソッドを使用して、実際の結果の日。形文字列「2018-08-09T10:20:54.396Z」8つの追加の必要GMTタイムゾーンには、私たちは前に文字列19を取る必要があり、その後、「T」はスペースに置き換え、つまり、我々は必要時刻形式。

function time(time = +new Date()) { var date = new Date(time + 8 * 3600 * 1000); return date.toJSON().substr(0, 19).replace('T', ' ').replace(/-/g, '.'); } time(); // "2018.08.09 18:25:54"

時間形式「 - 」。「」またはその他の記号を変更することも可能です。複数のスターわずかを保存する前よりもコードの古い方法を、コントラスト、また多くのクリーナーをお読みください。時刻の形式は、数ミリ秒を必要とする場合は、最初の23桁の文字列を取得する必要があり、上記のように置き換える方法で置き換えます。

おすすめ

転載: www.cnblogs.com/maidongdong/p/11230988.html