为什么我的.getdate脚本会间歇性工作?

时间:2019-01-04 23:06:57

标签: javascript

我有一个网站,显示用户访问的月份和日期。现在它可以正常工作,但是当我更新代码时,.getdate脚本停止工作。

我没有更改脚本的任何部分-即使当我复制并粘贴当前正在运行的相同代码并将其上传为新文件时,该脚本也不起作用。我是一个初学者,自学成才,所以也许有一个非常简单的解决方案。

这是脚本:

<script>
function myFunction() {
var month = new Array();
month[0] = "January";
month[1] = "February";
month[2] = "March";
month[3] = "April";
month[4] = "May";
month[5] = "June";
month[6] = "July";
month[7] = "August";
month[8] = "September";
month[9] = "October";
month[10] = "November";
month[11] = "December";
var d = new Date();
var n = month[d.getMonth()] +' '+ [d.getDate()];
document.getElementById("date").innerHTML = n;
}
</script>

这是在代码中的实现方式:

< h3 > today is < h3 id="date" >< /h3 >< h3 > and you can change the world< /h3 >< /h3 >

同样,该代码现在正在我的网站上运行。但是,任何重用相同代码的尝试都将失败。可以肯定的是,我可以复制并粘贴此代码,并且可以达到相同的结果。任何帮助表示赞赏:)

1 个答案:

答案 0 :(得分:0)

问题似乎是隐藏在标记中的空格。这是您的片段。我要做的就是删除标签内的空格。

function myFunction() {
var month = new Array();
month[0] = "January";
month[1] = "February";
month[2] = "March";
month[3] = "April";
month[4] = "May";
month[5] = "June";
month[6] = "July";
month[7] = "August";
month[8] = "September";
month[9] = "October";
month[10] = "November";
month[11] = "December";
var d = new Date();
var n = month[d.getMonth()] +' '+ [d.getDate()];
document.getElementById("date").innerHTML = n;
}
myFunction()
<h3> today is <h3 id="date" ></h3><h3> and you can change the world</h3></h3>

但是,当我们在这里时,您应该真正避免在日期上进行这种低级操作,并使用内置函数。您可以用...来做您想做的事

var formattedDate = new Date().toLocaleString({},{month:'long', day:'numeric'})

...,它会自动翻译成用户的语言。