Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ruby-on-rails-3/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
函数获取昨天';s日期的Javascript格式为DD/MM/YYYY_Javascript_Date - Fatal编程技术网

函数获取昨天';s日期的Javascript格式为DD/MM/YYYY

函数获取昨天';s日期的Javascript格式为DD/MM/YYYY,javascript,date,Javascript,Date,我一直在寻找以DD/MM/YYYY格式显示昨天日期的方法。 以下是我当前的代码: 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+

我一直在寻找以DD/MM/YYYY格式显示昨天日期的方法。 以下是我当前的代码:

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;
正如在其他地方的网站上推荐的那样(丢失了链接),我收到一个错误,说找不到此对象的getDate()

我将我的脚本用于Sahi,但我认为它没有链接,因为Sahi在Javascript方面没有问题

提前谢谢。

试试这个:

function getYesterdaysDate() {
    var date = new Date();
    date.setDate(date.getDate()-1);
    return date.getDate() + '/' + (date.getMonth()+1) + '/' + date.getFullYear();
}
$today = new Date();
$yesterday = new Date($today);
$yesterday.setDate($today.getDate() - 1); //setDate also supports negative values, which cause the month to rollover.

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

$today = $dd+'/'+$mm+'/'+$yyyy;
字符串没有
getDate

另外,
$today.getDate()-1
只给出一个月的某一天减去一;它没有给你“昨天”的完整日期。试试这个:

$today = new Date();
$yesterday = new Date($today);
$yesterday.setDate($today.getDate() - 1); //setDate also supports negative values, which cause the month to rollover.
然后只需应用您编写的格式代码:

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;
var$dd=$forday.getDate();
var$mm=$forday.getMonth()+1//一月是零!
var$yyyy=$forday.getFullYear();

if($dd在if语句中重写
$today

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

if($dd)这会更好吗:?当然你必须填写必要的
0
s。这是因为你的
$today
最终被分配给了一个字符串(
“dd/mm/yyyyy”
),而字符串没有方法
getDate()
。为什么会有这么多尴尬的
$
?你知道,这不是PHP。仅供参考,这里有一个很好的库来处理日期操作:。谢谢,差不多了,我只需要在单个数字之前显示零。:@user1881815:试试这个日期。getFullYear()+/+(月<10?'0:“”)+月+/+(日<10?'0:“”)+天;这在1月1日不起作用。谢谢。这种方法对一年中的每一天都有效吗?@user1881815,我很确定它会起作用。我在一年的第一天、一个月的第一天和当前日期进行了测试,在这些情况下都有效。你是对的。非常感谢!