Maison > interface Web > js tutoriel > le corps du texte

Comment convertir l'horodatage js au format de date

PHPz
Libérer: 2018-10-13 16:39:21
original
1549 Les gens l'ont consulté

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();
Copier après la connexion

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()返回数值的单位是毫秒。
Copier après la connexion

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}$/,' ');  
}
Copier après la connexion

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?&#39;0&#39;+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+&#39;-&#39;+add0(m)+&#39;-&#39;+add0(d)+&#39; &#39;+add0(h)+&#39;:&#39;+add0(mm)+&#39;:&#39;+add0(s);
}
Copier après la connexion

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()] : &#39;th&#39;}, 
  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; 
 }); 
}
Copier après la connexion
peut facilement convertir l'horodatage au format de date en appelant la méthode, telle que :

date(&#39;Y-m-d&#39;,&#39;1350052653&#39;);//很方便的将时间戳转换成了2012-10-11 
date(&#39;Y-m-d H:i:s&#39;,&#39;1350052653&#39;);//得到的结果是2012-10-12 22:37:33
Copier après la connexion
Ce qui précède est la méthode de conversion de l'horodatage js au format date. J'espère que cela sera utile à l'apprentissage de tout le monde.

【Tutoriels associés recommandés】

1.

Tutoriel vidéo JavaScript2
Manuel en ligne JavaScript3. tutoriel bootstrap

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal