Qu'est-ce que l'horodatage Unix : l'horodatage Unix, également connu sous le nom d'heure Unix ou heure POSIX, est une méthode de représentation de l'heure, définie comme l'heure de Greenwich. Le nombre total de secondes entre 00:00:00 le 1er janvier 1970 et le présent. Les horodatages Unix ne sont pas seulement utilisés dans les systèmes Unix et les systèmes de type Unix, mais sont également largement utilisés dans de nombreux autres systèmes d'exploitation.
Actuellement, de nombreux systèmes d'exploitation utilisent des nombres binaires de 32 bits pour représenter l'heure. Les horodatages Unix pour de tels systèmes peuvent être utilisés jusqu'au 19 janvier 2038, 03:14:07 GMT (binaire : 01111111 11111111 11111111 11111111). Une seconde plus tard, le nombre binaire deviendra 10000000 00000000 00000000 00000000, et une erreur de débordement se produira, ce qui amènera le système à mal comprendre l'heure comme étant 20:45:52 le 13 décembre 1901. Cela est susceptible de provoquer une panne logicielle, voire une paralysie du système. Les systèmes qui utilisent des nombres binaires de 64 bits pour représenter l'heure (qui peuvent être utilisés jusqu'à 15:30:08 le 4 décembre 292 277 026 596 heure de Greenwich) ne rencontreront fondamentalement pas ce type de problème de débordement.
1.js Convertir l'heure en horodatage
Méthode 1.js pour obtenir l'horodatage actuel
var timestamp1 = Date.parse(new Date()); var timestamp2 = (new Date()).valueOf(); var timestamp3 = new Date().getTime();
Le premier type : l'horodatage obtenu consiste à changer la milliseconde en 000 pour l'affichage, les deuxième et troisième types consistent à obtenir l'horodatage de la milliseconde actuelle.
Méthode 2.js pour obtenir l'horodatage spécifié
var oldTime = (new Date("2015/06/23 08:00:20")).getTime()/1000; getTime()返回数值的单位是毫秒。
2.js pour obtenir l'heure Convertir au format de date normal
1. Méthode Date toLocaleString
function getLocalTime(nS) { return new Date(parseInt(nS) * 1000).toLocaleString().replace(/:\d{1,2}$/,' '); }
La fonction parseInt() analyse une chaîne et renvoie un entier.
L'unité de temps de fonctionnement en js est la milliseconde. La méthode
toLocaleString() peut convertir l'objet Date en chaîne en fonction de l'heure locale et renvoyer le résultat. La méthode
replace() est utilisée pour remplacer certains caractères par d'autres caractères dans une chaîne, ou pour remplacer une sous-chaîne qui correspond à une expression régulière.
replace(/:d{1,2}$/,' ') Vérifiez que le remplacement commence par : une chaîne se terminant par un ou deux chiffres, qui sont des secondes, remplacez-la par un
< vide ; 🎜> Nous pouvons donc utiliser des expressions régulières pour changer le format de date souhaité.Méthode d'attribut 2.Date
function add0(m){return m<10?'0'+m:m } function format(shijianchuo) { //shijianchuo是整数,否则要parseInt转换 var time = new Date(shijianchuo); var y = time.getFullYear(); var m = time.getMonth()+1; var d = time.getDate(); var h = time.getHours(); var mm = time.getMinutes(); var s = time.getSeconds(); return y+'-'+add0(m)+'-'+add0(d)+' '+add0(h)+':'+add0(mm)+':'+add0(s); }
3. Le formateur d'heure encapsulé
/** * 和PHP一样的时间戳格式化函数 * @param {string} format 格式 * @param {int} timestamp 要格式化的时间 默认为当前时间 * @return {string} 格式化的时间字符串 */ function date(format, timestamp){ var a, jsdate=((timestamp) ? new Date(timestamp*1000) : new Date()); var pad = function(n, c){ if((n = n + "").length < c){ return new Array(++c - n.length).join("0") + n; } else { return n; } }; var txt_weekdays = ["Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"]; var txt_ordin = {1:"st", 2:"nd", 3:"rd", 21:"st", 22:"nd", 23:"rd", 31:"st"}; var txt_months = ["", "January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December"]; var f = { // Day d: function(){return pad(f.j(), 2)}, D: function(){return f.l().substr(0,3)}, j: function(){return jsdate.getDate()}, l: function(){return txt_weekdays[f.w()]}, N: function(){return f.w() + 1}, S: function(){return txt_ordin[f.j()] ? txt_ordin[f.j()] : 'th'}, w: function(){return jsdate.getDay()}, z: function(){return (jsdate - new Date(jsdate.getFullYear() + "/1/1")) / 864e5 >> 0}, // Week W: function(){ var a = f.z(), b = 364 + f.L() - a; var nd2, nd = (new Date(jsdate.getFullYear() + "/1/1").getDay() || 7) - 1; if(b <= 2 && ((jsdate.getDay() || 7) - 1) <= 2 - b){ return 1; } else{ if(a = 4 && a >= (6 - nd)){ nd2 = new Date(jsdate.getFullYear() - 1 + "/12/31"); return date("W", Math.round(nd2.getTime()/1000)); } else{ return (1 + (nd > 0); } } }, // Month F: function(){return txt_months[f.n()]}, m: function(){return pad(f.n(), 2)}, M: function(){return f.F().substr(0,3)}, n: function(){return jsdate.getMonth() + 1}, t: function(){ var n; if( (n = jsdate.getMonth() + 1) == 2 ){ return 28 + f.L(); } else{ if( n & 1 && n < 8 || !(n & 1) && n > 7 ){ return 31; } else{ return 30; } } }, // Year L: function(){var y = f.Y();return (!(y & 3) && (y % 1e2 || !(y % 4e2))) ? 1 : 0}, //o not supported yet Y: function(){return jsdate.getFullYear()}, y: function(){return (jsdate.getFullYear() + "").slice(2)}, // Time a: function(){return jsdate.getHours() > 11 ? "pm" : "am"}, A: function(){return f.a().toUpperCase()}, B: function(){ // peter paul koch: var off = (jsdate.getTimezoneOffset() + 60)*60; var theSeconds = (jsdate.getHours() * 3600) + (jsdate.getMinutes() * 60) + jsdate.getSeconds() + off; var beat = Math.floor(theSeconds/86.4); if (beat > 1000) beat -= 1000; if (beat < 0) beat += 1000; if ((String(beat)).length == 1) beat = "00"+beat; if ((String(beat)).length == 2) beat = "0"+beat; return beat; }, g: function(){return jsdate.getHours() % 12 || 12}, G: function(){return jsdate.getHours()}, h: function(){return pad(f.g(), 2)}, H: function(){return pad(jsdate.getHours(), 2)}, i: function(){return pad(jsdate.getMinutes(), 2)}, s: function(){return pad(jsdate.getSeconds(), 2)}, //u not supported yet // Timezone //e not supported yet //I not supported yet O: function(){ var t = pad(Math.abs(jsdate.getTimezoneOffset()/60*100), 4); if (jsdate.getTimezoneOffset() > 0) t = "-" + t; else t = "+" + t; return t; }, P: function(){var O = f.O();return (O.substr(0, 3) + ":" + O.substr(3, 2))}, //T not supported yet //Z not supported yet // Full Date/Time c: function(){return f.Y() + "-" + f.m() + "-" + f.d() + "T" + f.h() + ":" + f.i() + ":" + f.s() + f.P()}, //r not supported yet U: function(){return Math.round(jsdate.getTime()/1000)} }; return format.replace(/[\]?([a-zA-Z])/g, function(t, s){ if( t!=s ){ // escaped ret = s; } else if( f[s] ){ // a date function exists ret = f[s](); } else{ // nothing special ret = s; } return ret; }); }
date('Y-m-d','1350052653');//很方便的将时间戳转换成了2012-10-11 date('Y-m-d H:i:s','1350052653');//得到的结果是2012-10-12 22:37:33
Tutoriel vidéo JavaScript2
Manuel en ligne JavaScript3. tutoriel bootstrap