js中生成今天零点到今天23:59的两个时间戳的代码

js中生成今天零点到今天23:59的两个时间戳的代码,第1张

你好,

两个时间戳比较简单,new两个当前Date对象,将时、分,分别设置为零点和23:59分,再getTime就可以了。只接代码:

var zero = new Date();

var eleven = new Date();

zerosetHours(0);

zerosetMinutes(0);

zerosetSeconds(0);

elevensetHours(23);

elevensetMinutes(59);

elevensetSeconds(0);

consolelog('今天零点:' + zerogetTime());

consolelog('23:59:' + elevengetTime());

希望解决了你的问题,如有疑问可追问!

一js将时间转换成时间戳

1js获取当前时间戳的方法

var timestamp1 = Dateparse(new Date());

var timestamp2 = (new Date())valueOf();

var timestamp3 = new Date()getTime();

第一种:获取的时间戳是把毫秒改成000显示,第二种和第三种是获取了当前毫秒的时间戳。

2js获取制定时间戳的方法

var oldTime = (new Date("2015/06/23 08:00:20"))getTime()/1000;

getTime()返回数值的单位是毫秒。

二js把时间戳转为为普通日期格式

1Date toLocaleString方法

function getLocalTime(nS) {

return new Date(parseInt(nS) 1000)toLocaleString()replace(/:\d{1,2}$/,' ');

}

parseInt() 函数可解析一个字符串,并返回一个整数。

js中时间 *** 作单位是毫秒。

toLocaleString() 方法可根据本地时间把 Date 对象转换为字符串,并返回结果。

replace() 方法用于在字符串中用一些字符替换另一些字符,或替换一个与正则表达式匹配的子串。

replace(/:\d{1,2}$/,' ')验证替换以:开始有一位或二位数字的结束字符串,就是秒;替换为空

显示如下:

所以我们可以利用正则表达式改变我们想要的日期格式。

2Date 属性方法

function add0(m){return m<10'0'+m:m }

function format(shijianchuo)

{

//shijianchuo是整数,否则要parseInt转换

var time = new Date(shijianchuo);

var y = timegetFullYear();

var m = timegetMonth()+1;

var d = timegetDate();

var h = timegetHours();

var mm = timegetMinutes();

var s = timegetSeconds();

return y+'-'+add0(m)+'-'+add0(d)+' '+add0(h)+':'+add0(mm)+':'+add0(s);

}

三封装的时间格式器

/

和PHP一样的时间戳格式化函数

@param {string} format 格式

@param {int} timestamp 要格式化的时间 默认为当前时间

@return {string} 格式化的时间字符串

/

function date(format, timestamp){

var a, jsdate=((timestamp) new Date(timestamp1000) : new Date());

var pad = function(n, c){

if((n = n + "")length < c){

return new Array(++c - nlength)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(fj(), 2)},

D: function(){return fl()substr(0,3)},

j: function(){return jsdategetDate()},

l: function(){return txt_weekdays[fw()]},

N: function(){return fw() + 1},

S: function(){return txt_ordin[fj()] txt_ordin[fj()] : 'th'},

w: function(){return jsdategetDay()},

z: function(){return (jsdate - new Date(jsdategetFullYear() + "/1/1")) / 864e5 >> 0},

// Week

W: function(){

var a = fz(), b = 364 + fL() - a;

var nd2, nd = (new Date(jsdategetFullYear() + "/1/1")getDay() || 7) - 1;

if(b <= 2 && ((jsdategetDay() || 7) - 1) <= 2 - b){

return 1;

} else{

if(a <= 2 && nd >= 4 && a >= (6 - nd)){

nd2 = new Date(jsdategetFullYear() - 1 + "/12/31");

return date("W", Mathround(nd2getTime()/1000));

} else{

return (1 + (nd <= 3 ((a + nd) / 7) : (a - (7 - nd)) / 7) >> 0);

}

}

},

// Month

F: function(){return txt_months[fn()]},

m: function(){return pad(fn(), 2)},

M: function(){return fF()substr(0,3)},

n: function(){return jsdategetMonth() + 1},

t: function(){

var n;

if( (n = jsdategetMonth() + 1) == 2 ){

return 28 + fL();

} else{

if( n & 1 && n < 8 || !(n & 1) && n > 7 ){

return 31;

} else{

return 30;

}

}

},

// Year

L: function(){var y = fY();return (!(y & 3) && (y % 1e2 || !(y % 4e2))) 1 : 0},

//o not supported yet

Y: function(){return jsdategetFullYear()},

y: function(){return (jsdategetFullYear() + "")slice(2)},

// Time

a: function(){return jsdategetHours() > 11 "pm" : "am"},

A: function(){return fa()toUpperCase()},

B: function(){

// peter paul koch:

var off = (jsdategetTimezoneOffset() + 60)60;

var theSeconds = (jsdategetHours() 3600) + (jsdategetMinutes() 60) + jsdategetSeconds() + off;

var beat = Mathfloor(theSeconds/864);

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 jsdategetHours() % 12 || 12},

G: function(){return jsdategetHours()},

h: function(){return pad(fg(), 2)},

H: function(){return pad(jsdategetHours(), 2)},

i: function(){return pad(jsdategetMinutes(), 2)},

s: function(){return pad(jsdategetSeconds(), 2)},

//u not supported yet

// Timezone

//e not supported yet

//I not supported yet

O: function(){

var t = pad(Mathabs(jsdategetTimezoneOffset()/60100), 4);

if (jsdategetTimezoneOffset() > 0) t = "-" + t; else t = "+" + t;

return t;

},

P: function(){var O = fO();return (Osubstr(0, 3) + ":" + Osubstr(3, 2))},

//T not supported yet

//Z not supported yet

// Full Date/Time

c: function(){return fY() + "-" + fm() + "-" + fd() + "T" + fh() + ":" + fi() + ":" + fs() + fP()},

//r not supported yet

U: function(){return Mathround(jsdategetTime()/1000)}

};

return formatreplace(/[\]([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

将日期格式转换成时间戳:

//

也很简单

date

=

new

Date('2014-04-23

18:55:49:123');

//传入一个时间格式,如果不传入就是获取现在的时间了,就这么简单。

//

有三种方式获取

time1

=

dategetTime()

time2

=

datevalueOf()

time3

=

Dateparse(date)

//

三种获取的区别

第一、第二种:会精确到

第三种:只能精确到秒,将用0来代替

//

比如上面代码输出的结果(一眼就能看出区别):

//

1398250549123

//

1398250549123

//

1398250549000

// 计算两个时间戳相差的多少年多少月多少天

calculateDiffTime() {

  let startTime = '1629107469000'  //2021-08-16 17:51

  let endTime = '1976262719000'  //2032-08-16 17:51

  let flag = [1, 3, 5, 7, 8, 10, 12, 4, 6, 9, 11, 2];

  let start = new Date(startTime);

  let end = new Date(endTime);

  let year = endgetFullYear() - startgetFullYear();

  let month = endgetMonth() - startgetMonth();

  let day = endgetDate() - startgetDate();

  if (month < 0) {

    year--;

    month = endgetMonth() + (12 - startgetMonth());

  }

  if (day < 0) {

    month--;

    let index = flagfindIndex((temp) => {

      return temp === startgetMonth() + 1

    });

    let monthLength;

    if (index <= 6) {

      monthLength = 31;

    } else if (index > 6 && index <= 10) {

      monthLength = 30;

    } else {

      monthLength = 28;

    }

    day = endgetDate() + (monthLength - startgetDate());

  }

  thisresult = `相差${year}年${month}月${day}天`;

  consolelog(thisresult)

}

#  计算两个时间戳相差的多少年多少月多少天多少小时多少分多少秒(另一种写法)

//计算两个时间戳相差的多少年多少月多少天多少小时多少分多少秒

calculateDiffTime (){

  let startTime = '1629107469000'  //2021-08-16 17:51

  let endTime = '1976262719000'  //2032-08-16 17:51

  let runTime = parseInt((endTime - startTime) / 1000);

  var year = Mathfloor(runTime / 86400 / 365);

  runTime = runTime % (86400 365);

  var month = Mathfloor(runTime / 86400 / 30);

  runTime = runTime % (86400 30);

  var day = Mathfloor(runTime / 86400);

  runTime = runTime % 86400;

  var hour = Mathfloor(runTime / 3600);

  runTime = runTime % 3600;

  var minute = Mathfloor(runTime / 60);

  runTime = runTime % 60;

  var second = runTime;

  consolelog(`相差${year}年${month}月${day}天${hour}小时${minute}分${second}秒`);

return year+','+month+','+day+','+hour+','+minute+','+second;

}

// npm i moment

moment()startOf('day')// 当天零点

moment()subtract(1,'days')startOf('day')// 昨天零点

还有你这为啥过1秒才叫零点?

1、new Date(new Date()toLocaleDateString())getTime(),没有 24:00:00 只有23:59:59 加一秒就到 0:00:00 所以别纠结24:00:00。

2、具体步骤:

1)方法一:获取当前时间的Date对象、或者将指定日期时间字符串转换为Date对象,再将Date对象的时、分、秒、毫秒设置为0,再使用getTime()获取时间戳即可。

2)方法二:拼接“2020/10/10”标准格式的日期字符串,“2020/10/10”相当于“2020/10/10 00:00:00”。

3)对于"2012/10/10"格式,不要尝试通过toLocaleDateString()方法获得,toLocaleDateString()函数返回的是基于区域语言设置日期格式,不同电脑返回的格式是有差异的,不同浏览器返回的格式也有差异。也不要用toISOString()方法获得再去提取,toISOString()是基于GMT/UTC时区的,而我们是东八区。

以上就是关于js中生成今天零点到今天23:59的两个时间戳的代码全部的内容,包括:js中生成今天零点到今天23:59的两个时间戳的代码、js时间戳怎么转成日期格式、js中怎么样时间格式转成时间戳等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/web/9505056.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-29
下一篇2023-04-29

发表评论

登录后才能评论

评论列表(0条)

    保存