1

我在下面的代码的帮助下显示昨天的日期,这一切都很好,但我的要求是我需要将昨天的变量显示 为全局,因为我还想将该变量用于其他目的

<!DOCTYPE html>
<html>
<head>
<script>
function displayDate()
{
var d = new Date();
d.setDate(d.getDate() - 1);
var curr_date = d.getDate(); 
var curr_month = d.getMonth() + 1; 
var curr_year = d.getFullYear();
var yesterday = curr_year + "-" + curr_month + "-" + curr_date;
alert('The value after modifications is'+yesterday )
}
</script>
</head>
<body>
<p id="demo">New Modifications FOR Click Button to Display Yesterday Date</p>
<button type="button" onclick="displayDate()">Display Date</button>
</body>
</html> 

请告诉我如何在此示例中将昨天的变量显示为全局变量,在此先感谢。

4

4 回答 4

5

简单的。像这样 :

var yesterday;
function displayDate()
 {
    var d = new Date();
    d.setDate(d.getDate() - 1);
    var curr_date = d.getDate(); 
    var curr_month = d.getMonth() + 1; 
    var curr_year = d.getFullYear();
    yesterday = curr_year + "-" + curr_month + "-" + curr_date;
    alert('The value after modifications is'+yesterday )
 }

不过,您应该阅读一些关于 JS 的一般教程。

于 2013-07-03T13:39:44.093 回答
0
<script>
var yesterday;
function displayDate()
{
...........
}
</script>

仅供参考:通过前缀var使变量成为全局变量。

参考一些javascript教程

于 2013-07-03T13:41:36.163 回答
0

你甚至可以使它复杂化,但我认为这是一种很好的方式:

<!DOCTYPE html>
<html>
<head>
<script>

function getYesterDay(values)
{
    if(values)
        getYesterDay.date = values;
    else
        return getYesterDay.date;
}
function displayDate()
{
    var d = new Date();
    d.setDate(d.getDate() - 1);
    var curr_date = d.getDate(); 
    var curr_month = d.getMonth() + 1; 
    var curr_year = d.getFullYear();
    getYesterDay(curr_year + "-" + curr_month + "-" + curr_date);
    alert('The value after modifications is'+getYesterDay() )
}
</script>
</head>
<body>
<p id="demo">New Modifications FOR Click Button to Display Yesterday Date</p>
<button type="button" onclick="displayDate()">Display Date</button>
</body>
</html> 

使用 getYesterDay() 函数在任何你想要的地方设置或获取日期。

于 2013-07-03T13:51:22.357 回答
0

基本上有两种方式。

您可以避免在函数内将其声明为变量。然后当你使用它时它将被创建为一个全局变量:

function displayDate()
{
...
  yesterday = curr_year + "-" + curr_month + "-" + curr_date;
...
}

一种更清楚地表明意图的方法是将其声明为函数外部的变量:

var yesterday;

function displayDate()
{
...
  yesterday = curr_year + "-" + curr_month + "-" + curr_date;
...
}

为了完整起见,我想提第三种可能的方式。您也可以将其创建为window对象的属性。由于这是全局范围,因此该属性几乎在所有方面都用作全局变量:

function displayDate()
{
...
  window.yesterday = curr_year + "-" + curr_month + "-" + curr_date;
...
}
于 2013-07-03T13:43:32.993 回答