A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 盛德成 中级黑马   /  2014-3-27 10:56  /  951 人查看  /  4 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 盛德成 于 2014-3-27 10:58 编辑
  1. var d = new Date();
  2. with(d)
  3. {        
  4.         var month = (getMonth()+1);
  5.         month = (month>9)?month:"0"+month;
  6.         alert(getYear()+"年"+month+"月"+getDate()+"日 星期"+getDay());
  7. }
复制代码

第四行那个地方为什么加1?毕老师说月份从0开始算的,为啥?第五行用来做什么的?

4 个回复

倒序浏览
getMonth()返回的值在 0 和 11 之间,值 0 表示 1 月,咱们看着方便就要返回值+1; 第五行是为了使显示的格式好看些,如果是10月份之前就显示0+数字,例如8月就是08,这样就跟10月显示10一样!     A ? B : C这是三元运算符号应该知道把, 如果A为真,就取B的值返回,A为假返回C的值
回复 使用道具 举报
  1.     var d = new Date();
  2.     with(d)
  3.     {        
  4.             var month = (getMonth()+1); //请看解释
  5.             month = (month>9)?month:"0"+month;
  6.             alert(getYear()+"年"+month+"月"+getDate()+"日 星期"+getDay());
  7.     }
复制代码

在日期类里面封装的其实也是数组,数组角标编码从0开始
回复 使用道具 举报
就是规定月份从0开始
(month>9)?month:"0"+month;
判断条件?如果满足。则输出 ":" 前的, 如果不满足,则输出 ":" 后的
在这里就是判断,月份大于10月吗?如果大于则输出month值,如果不大于则补0 输出如:01
回复 使用道具 举报
H-Deka 发表于 2014-3-27 11:46
getMonth()返回的值在 0 和 11 之间,值 0 表示 1 月,咱们看着方便就要返回值+1; 第五行是为了使显示的格 ...

明白了,谢谢
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马