重新加载javascript函数

重新加载javascript函数,javascript,Javascript,我有一个webapp,它运行myjavascript变量,其中一个变量是javascript weeknumber函数,在该函数中可以正确读取和显示。但问题是,除非我重新加载应用程序(我不想这样做),否则webapp不会刷新变量,所以我希望有一种方法可以创建weeknumber脚本,并将其创建到一个我调用的函数中(类似于getdate()),而不是在webapp加载时运行它。下面是我一直使用的脚本 <script> Date.prototype.getWeek = function(

我有一个webapp,它运行myjavascript变量,其中一个变量是javascript weeknumber函数,在该函数中可以正确读取和显示。但问题是,除非我重新加载应用程序(我不想这样做),否则webapp不会刷新变量,所以我希望有一种方法可以创建weeknumber脚本,并将其创建到一个我调用的函数中(类似于
getdate()
),而不是在webapp加载时运行它。下面是我一直使用的脚本

<script>
Date.prototype.getWeek = function() {
var onejan = new Date(this.getFullYear(), 0, 1);
return Math.ceil((((this - onejan) / 86400000) + onejan.getDay() - 1) / 7);
}
var week = "Week "
var weekNumber = week+(new Date()).getWeek();

</script>

Date.prototype.getWeek=函数(){
var onejan=新日期(this.getFullYear(),0,1);
返回Math.ceil(((this-onejan)/86400000)+onejan.getDay()-1)/7);
}
var week=“week”
var weekNumber=week+(新日期()).getWeek();

根据您的webapp框架的不同,可能有一个事件可用于触发更新。如果没有,您可以使用
setInterval()


Date.prototype.getWeek=函数(){
var onejan=新日期(this.getFullYear(),0,1);
返回Math.ceil(((this-onejan)/86400000)+onejan.getDay()-1)/7);
}
var week=“week”
变量日期=新日期()
var weekNumber=week+date.getWeek();
函数setWeek(){
日期=新日期()
weekNumber=周+日期。getWeek();
}
setInterval(setWeek,500)//每500毫秒设置一次week变量

这里,
week
变量是全局变量,
setInterval
调用
setWeek()
函数每500毫秒更新一次全局变量。

您可以将用于获取
weekNumber
的内容包装到一个函数中,并在任何地方调用它,而不是函数,不是吗?当然,您可以在函数中放入任何代码。您对此有什么特别的问题吗?看起来您已经知道如何使用它了定义一个函数。如果您需要更多信息,请查看以了解有关函数的更多信息。“因此,我希望有一种方法可以将weeknumber脚本创建到我调用的函数中(类似于getdate()”-你是在问如何编写函数吗?如果不是,你能解释一下你想要实现什么,以及为什么它没有按你期望的方式工作吗?你发布的代码有修改日期原型的效果,但实际上对DOM没有任何其他作用。你希望更新的
weekNumber 变量实际做什么?我需要weeknumber根据weeknum的变化进行更新,如果在屏幕上加载,webapp屏幕将显示它是哪一周,但是当周发生变化时,weeknum不会显示,除非您刷新浏览器。因此,如果我理解,脚本将每500毫秒重新加载一次,如果是这样的话,这正是我所希望的,但更好呃
<script>
    Date.prototype.getWeek = function() {
        var onejan = new Date(this.getFullYear(), 0, 1);
        return Math.ceil((((this - onejan) / 86400000) + onejan.getDay() - 1) / 7);
    }
    var week = "Week "
    var date = new Date()
    var weekNumber = week + date.getWeek();

    function setWeek() {
        date = new Date()
        weekNumber = week + date.getWeek();
    }

    setInterval(setWeek, 500) // Sets the week variable every 500 milliseconds

</script>