在这种情况下如何使变量成为全局变量?

时间:2013-07-03 13:38:45

标签: javascript

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

<!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 个答案:

答案 0 :(得分:6)

简单。像这样:

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的教程。

答案 1 :(得分:0)

<script>
var yesterday;
function displayDate()
{
...........
}
</script>
前缀var使变量成为全局变量,

FYI:

参考一些javascript教程

答案 2 :(得分: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;
...
}

答案 3 :(得分: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()函数在任何地方设置或获取日期。