我有一个HTML文件,该文件的外部链接是Javascript。
我需要创建三个单独的变量,然后分别命名为Day,Month和Year。
我一点也不明白。我已经尝试过we3学校提供的代码,但对我来说却毫无意义。
有人可以告诉我如何显示这些不同的项目(日,月,年)吗?我迷失了方向。
我希望有人能告诉我编码,这是什么意思,因为我整天都在阅读不同的代码,但这就像在读另一种语言,我听不懂。
TYIA
这是我的代码。我不知道我在做什么,所以我确定那是一团糟!
var myDate = new Date();
console.log(myDate);
function showDate(){
var mn = date.getMonth();
var d = date.getDay();
var y = date.getCurrentYear();
var date = mn + d + y session;
document.getElementById("'Month', 'Day', 'Year'")
}
答案 0 :(得分:2)
我怀疑您想要的是可读的月份,日期等。 JavaScript不开箱即用。因此,您需要创建数组来保存这些值,以便向用户呈现可读的内容。但是,请最后阅读我的MomentJS示例。
const months = ["January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December"]
function showDate(){
var fullDate = new Date();
var d = fullDate.getDay();
var m = fullDate.getMonth();
var y = fullDate.getFullYear();
var date = `${months[m]} ${d}, ${y}`;
document.getElementById('date').innerHTML = date;
}
showDate();
<div id="date"><div>
MomentJS已确定日期,您确实应该使用它
function showDate() {
var date = moment().format('MMMM D, YYYY');
document.getElementById('date').innerHTML = date;
}
showDate();
<script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.22.2/moment.min.js"></script>
<div id="date"></div>
document.getElementById("'Month', 'Day', 'Year'")
。您只能为每个getElementById
引用一个ID,因此该方法无效。.innerHTML
session
showDate()
答案 1 :(得分:1)
这是先发制人的,因为您没有发布显示您实际处理内容的代码,但这是如何从JS获取值的方法:
var now = new Date()
var day = now.getDay()
var year = now.getFullYear()
var month = now.getMonth() // in November, this will return the number 10
查看MDN以了解详情:https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date
现在使用您的代码,我将进行以下更改:
function showDate() {
document.getElementById('idOfYourElement').innerHTML = new Date().getDate() // cheating a little
}
我强烈建议您购买一些有关Udemy(或任何地方)的课程,并花点时间在这些课程上。这些东西需要花费时间和精力,但是如果您经过艰苦的工作,您将在脑海中建立一个坚实的框架以快速学习此类概念。
答案 2 :(得分:0)
好的,我也将不用代码回答您的问题。因此,要获取日期,您必须先声明varible才能获取该日期。
var fullDate = new Date();
var theDay = fullDate.getDay();
var theMonth = fullDate.getMonth();
var theYear = fullDate.getFullYear();
console.log(theDay+" "+theMonth+" "+theYear);
在我的情况下,我将其称为fullDate是为了清楚它获取日期的新实例。然后,您可以使用点连接器从该日期起获取所需的其他信息。 https://www.w3schools.com/jsref/jsref_obj_date.asp
我希望这会有所帮助。
编辑:您添加了信息更改
var mn = date.getMonth();
var d = date.getDay();
var y = date.getCurrentYear();
您为什么使用date.
?使用您先前创建的myDate
。
答案 3 :(得分:0)
这是更正的代码
var myDate = new Date();
console.log(myDate);
function showDate(){
var mn = myDate.getMonth();
var d = myDate.getDay();
var y = myDate.getFullYear();
var date = mn+" "+d+" "+y;
console.log(date);
}
因此,要打印或显示日期,您需要在两者之间加空格。在获得日期值之前,在本例中分别为11、30和2018,因为您所拥有的只是一个加号js,所以他们查看这些值并将其识别为整数。因此,它只是将它们加在一起。
通过在方程式中添加+" "+
,可以使js停止进行数学运算,而是将整个内容视为字符串,并将按照您指定的顺序打印出值。
我希望这会有所帮助。
答案 4 :(得分:0)
好的,您发布的代码中有几个错误。这是您的代码细分:
var myDate = new Date();
console.log(myDate);
新的Date()使用内置的Date函数创建Date对象。您将变量 myDate 设置为具有刚创建的日期对象的值。然后 console.log(myDate)将变量记录到控制台。如果打开(Ctrl + Shift + I)控制台,然后重新加载网页,您将看到myDate的值写入控制台。这部分没有错误。现在转到另一部分:
function showDate(){
var mn = date.getMonth();
var d = date.getDay();
var y = date.getCurrentYear();
var date = mn + d + y session;
document.getElementById("'Month', 'Day', 'Year'")
}
这是错误所在。 date.getMonth(), date.getDay()和 date.getCurrentYear 是 NOT 定义的。因此,它不是Date对象,因此不能使用方法 getMonth()和 getDay()。相反,您应该使用以前定义为Date对象的 myDate 。 myDate.getDay()。同样, getCurrentYear()不是有效的方法,您应该改用 getYear()或 getFullYear()返回当前年份,例如 myDate.getYear()。此处的另一个错误是“会话” 独立存在,因此没有任何意义。
最后, document.getElementById(htmlElementId)仅接受一个参数。此参数是html元素的 id 属性的值。例如,假设html文档的一个段落元素定义为:
<p id="paraID">This is a paragraph</p>
要访问此段落元素,您必须将 id 属性 paraID 的值作为 getElementById的参数传递()例如
var para = document.getElementById(paraID);
您可能希望日期显示在网页上。综合这些修复程序,代码的一种可能的无错误版本可能是:
var myDate = new Date();
console.log(myDate);
function showDate(){
var mn = myDate.getMonth();
var d = myDate.getDay();
var y = myDate.getYear();
var date = mn + "/" + d + "/" + y;
var element = document.getElementById(htmlElementId);// htmlElementId is id value
element.innerHTML = date;
}
showDate();