JS如何利用当前时间来获取昨天的时间

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JS如何利用当前时间来获取昨天的时间相关的知识,希望对你有一定的参考价值。

JS如何利用当前时间来获取昨天的时间
如果是月初的话月份也会跟着自动变化哦
同样,如果是年初的话年,月,都会跟着自动变化
比如2009-01-01
我要显示的是2008-12-31
月份和天数要显示双位,1月1日要显示01月01日
哪位大侠帮下忙啊
要js的。其他回答的无效。

<script language="javascript">
//获取系统时间
var LSTR_ndate=new Date();
var LSTR_Year=LSTR_ndate.getYear();
var LSTR_Month=LSTR_ndate.getMonth();
var LSTR_Date=LSTR_ndate.getDate();
//处理
var uom = new Date(LSTR_Year,LSTR_Month,LSTR_Date);
uom.setDate(uom.getDate()-1);//取得系统时间的前一天,重点在这里,负数是前几天,正数是后几天
var LINT_MM=uom.getMonth();
LINT_MM++;
var LSTR_MM=LINT_MM > 10?LINT_MM:("0"+LINT_MM)
var LINT_DD=uom.getDate();
var LSTR_DD=LINT_DD > 10?LINT_DD:("0"+LINT_DD)
//得到最终结果
uom = uom.getFullYear() + "-" + LSTR_MM + "-" + LSTR_DD;
alert(uom)
</script>
参考技术A Date 对象
启用基本存储器并取得日期和时间。

dateObj = new Date()
dateObj = new Date(dateVal)
dateObj = new Date(year, month, date[, hours[, minutes[, seconds[,ms]]]])

参数
dateObj

必选项。要赋值为 Date 对象的变量名。

dateVal

必选项。如果是数字值,dateVal 表示指定日期与 1970 年 1 月 1 日午夜间全球标准时间 的毫秒数。如果是字符串,则 dateVal 按照 parse 方法中的规则进行解析。dateVal 参数也可以是从某些 ActiveX(R) 对象返回的 VT_DATE 值。

year

必选项。完整的年份,比如,1976(而不是 76)。

month

必选项。表示的月份,是从 0 到 11 之间的整数( 1 月至 12 月)。

date

必选项。表示日期,是从 1 到 31 之间的整数。

hours

可选项。 如果提供了 minutes 则必须给出。表示小时,是从 0 到 23 的整数(午夜到 11pm)。

minutes

可选项。 如果提供了 seconds 则必须给出。表示分钟,是从 0 到 59 的整数。

seconds

可选项。 如果提供了 milliseconds 则必须给出。表示秒钟,是从 0 到 59 的整数。

ms

可选项。 表示毫秒,是从 0 到 999 的整数。

说明
Date 对象保存以毫秒为单位表示特定时间段。如果某个参数的值大于其范围或为负数,则存储的其他值将做相应的调整。例如,如果指定 150 秒,JScript 将该数字重新定义为 2 分 30 秒。

如果数字为 NaN,则表示该对象不代表特定的时间段。如果未向 Date 对象传递参数,它将被初始化为当前时间 (UTC)。在能够使用该对象前必须为其赋值。

Date 对象能够表示的日期范围约等于 1970 年 1 月 1 日前后各 285,616 年。

Date 对象具有两个不创建 Date 对象就可以调用的静态方法。它们是 parse 和 UTC。

错误
下面的示例演示了 Date 对象的用法。

function DateDemo()
var d, s = "Today's date is: "; // 声明变量。
d = new Date(); // 创建 Date 对象。
s += (d.getMonth() + 1) + "/"; // 获取月份。
s += d.getDate() + "/"; // 获取日。
s += d.getYear(); // 获取年份。
return(s); // 返回日期。
参考技术B 楼上的都太搞了......
有那么复杂么....
var dateVal = new Date(new Date()-1000*60*60*24);
不就行了....

附赠个格式化属性...
Date.prototype.toText=function()
var m;
var d;
if(this.getMonth()<9)
m="0"+(this.getMonth()+1);
else
m=this.getMonth()+1;

if(this.getDate()<10)
d="0"+this.getDate();
else
d=this.getDate();

return this.getYear()+"-"+m+"-"+d;


var getYesterday = function()
var dateStr = arguments[0].split("-");
return new Date(new Date(dateStr[1]+"-"+dateStr[2]+"-"+dateStr[0])-1000*60*60*24).toText();


-------------------看效果这样--------------
alert(getYesterday('2008-12-22'));
参考技术C 可以写一个function来实现:

function CheckTime()

var now = new Date();
var current = new Date(now.getFullYear(), now.getMonth(), now.getDate(), now.getHours(), now.getMinutes(), now.getSeconds());//设置现在的时间,去掉毫秒(LZ没有要求毫秒) var level = new Date(now.getFullYear(), now.getMonth(), now.getDate(), 18, 30, 0);//设置标准时间
var instance = current.getTime() - level.getTime();//在javascript里时间的比较要靠都转换为毫秒来计算,getTime()方法就是获取时间对应的毫秒数
if (instance > 0)

return 1;//现在的时间晚於标准时间
else if (instance < 0)

return -1;//现在的时间早於标准时间
else

return 0;//现在的时间等於标准时间
参考技术D 下面为完整代码:经过了火狐,IE7的测试,完全符合你的要求了,你可以直接粘贴运行下,如果还有其他要求,请说。

<html>
<head>

<script type="text/javascript">
function a()
var now=new Date();
var newdate=new Date();
var newtimems=newdate.getTime()-(24*60*60*1000);
newdate.setTime(newtimems);
var newdate=newdate.toLocaleString();
var x=document.getElementById("xianshi");
x.innerHTML="昨天此时是"+newdate;

</script>

</head>
<body>
<p id="xianshi" onclick="a()" style="font-size:36">点击我</p>
</body>
</html>

js获取当前时间(昨天今天明天)

1.开发过程中某些前台页面的时间控件我们需要给默认当前时间,jquery可以轻松的帮我们实现,代码如下:

//昨天的时间
var day1 = new Date();
day1.setTime(day1.getTime()-24*60*60*1000);
var s1 = day1.getFullYear()+"-" + (day1.getMonth()+1) + "-" + day1.getDate();
//今天的时间
var day2 = new Date();
day2.setTime(day2.getTime());
var s2 = day2.getFullYear()+"-" + (day2.getMonth()+1) + "-" + day2.getDate();
//明天的时间
var day3 = new Date();
day3.setTime(day3.getTime()+24*60*60*1000);
var s3 = day3.getFullYear()+"-" + (day3.getMonth()+1) + "-" + day3.getDate();
//拼接时间
function show(){
     var str = "" + s1 + "至" + s2;
     return str;
}
//赋值doubleDate
 $(‘#dateS‘).val(show());

2.下面是具体到时分秒的获取方法

function writeCurrentDate() {
        var now = new Date();
        var year = now.getFullYear(); //得到年份
        var month = now.getMonth();//得到月份
        var date = now.getDate();//得到日期
        var day = now.getDay();//得到周几
        var hour = now.getHours();//得到小时
        var minu = now.getMinutes();//得到分钟
        var sec = now.getSeconds();//得到秒
       var MS = now.getMilliseconds();//获取毫秒
        var week;
        month = month + 1;
        if (month < 10) month = "0" + month;
        if (date < 10) date = "0" + date;
        if (hour < 10) hour = "0" + hour;
        if (minu < 10) minu = "0" + minu;
        if (sec < 10) sec = "0" + sec;
        if (MS < 100)MS = "0" + MS;
        var arr_week = new Array("星期日", "星期一", "星期二", "星期三", "星期四", "星期五", "星期六");
        week = arr_week[day];
        var time = "";
        time = year + "年" + month + "月" + date + "日" + " " + hour + ":" + minu + ":" + sec + " " + week;
        //当前日期赋值给当前日期输入框中(jQuery easyUI)
        $("#currentDate").html(time);
        //设置得到当前日期的函数的执行间隔时间,每1000毫秒刷新一次。
        var timer = setTimeout("writeCurrentDate()", 1000);
      }

 

以上是关于JS如何利用当前时间来获取昨天的时间的主要内容,如果未能解决你的问题,请参考以下文章

js函数 如何 判断时间是今天还是昨天 请大家帮忙写个js函数来判断时间是不是为昨天 还是今天 谢谢

如何利用PHP时间戳获取当前时间

js获取当前时间(昨天今天明天)

[DBW]js获取当前时间(昨天今天明天)

js获取当前日期第几周

js判断时间是不是大于指定时间