以DD / MM / YYYY的格式获取昨天JavaScript的日期功能 [英] Function to get yesterday's date in Javascript in format DD/MM/YYYY

查看:101
本文介绍了以DD / MM / YYYY的格式获取昨天JavaScript的日期功能的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我一直在寻找一段时间,以DD / MM / YYYY的形式获得昨天的日期。
这是我现在的代码:

  var $ today = new Date(); 
var $ dd = $ today.getDate();
var $ mm = $ today.getMonth()+ 1; //一月是0!

var $ yyyy = $ today.getFullYear(); $ $ $ $ $ $ $ $ $ $ $ $ $ $ + $ $ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + '/'+ $ yyyy;

有了这个,我今天的日期格式为DD / MM / YYYY(谢谢SO)。
但是当我尝试这个:

  var $ yesterday = $ today.getDate() -  1; 

根据本网站推荐的其他地方(丢失链接),我收到一条错误,说getDate( )没有找到这个对象。



我正在使用我的脚本与Sahi,但我不认为它是链接,因为Sahi没有问题的Javascript。 / p>

提前谢谢。

解决方案

这里的问题似乎是您通过为其分配一个字符串来重新分配 $ today

  $ today = $ dd +'/'+ $ mm +'/'+ $ yyyy; 

字符串没有 getDate 。 / p>

另外, $ today.getDate() - 1 只是给你一个月的日子减去一个;它不会给你昨天的完整日期。尝试这样:

  $ today = new Date(); 
$ yesterday = new Date($ today);
$ yesterday.setDate($ today.getDate() - 1); // setDate还支持负值,这会导致月滚动。

然后只需应用您写的格式代码:

  var $ dd = $ yesterday.getDate(); 
var $ mm = $ yesterday.getMonth()+ 1; //一月是0!

var $ yyyy = $ yesterday.getFullYear(); $ $ $ $ $ $ $ $ + $ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + '/'+ $ yyyy;

由于最后一个语句, $ yesterday 现在是包含格式化日期的 String a Date )。


I've been looking for a while to get yesterday's date in format DD/MM/YYYY. Here's my current code:

var $today = new Date();
var $dd = $today.getDate();
var $mm = $today.getMonth()+1; //January is 0!

var $yyyy = $today.getFullYear();
if($dd<10){$dd='0'+dd} if($mm<10){$mm='0'+$mm} $today = $dd+'/'+$mm+'/'+$yyyy;

With this, I get today's date in format DD/MM/YYYY (thanks SO). But when I try this:

var $yesterday = $today.getDate()-1;

as recommended on this site somewhere else (lost the link), I get an error saying that getDate() was not found for this object.

I'm using my script with Sahi, but I don't think it's linked, as Sahi has no trouble with Javascript.

Thank you in advance.

解决方案

The problem here seems to be that you're reassigning $today by assigning a string to it:

$today = $dd+'/'+$mm+'/'+$yyyy;

Strings don't have getDate.

Also, $today.getDate()-1 just gives you the day of the month minus one; it doesn't give you the full date of 'yesterday'. Try this:

$today = new Date();
$yesterday = new Date($today);
$yesterday.setDate($today.getDate() - 1); //setDate also supports negative values, which cause the month to rollover.

Then just apply the formatting code you wrote:

var $dd = $yesterday.getDate();
var $mm = $yesterday.getMonth()+1; //January is 0!

var $yyyy = $yesterday.getFullYear();
if($dd<10){$dd='0'+dd} if($mm<10){$mm='0'+$mm} $yesterday = $dd+'/'+$mm+'/'+$yyyy;

Because of the last statement, $yesterday is now a String (not a Date) containing the formatted date.

这篇关于以DD / MM / YYYY的格式获取昨天JavaScript的日期功能的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆