Javascript的getYear、getFullYear、getUTCFullYear异同分享


Posted in Javascript onNovember 30, 2011

其中getYear()方法出生较早,在早期也一直使用OK,可是在2000年后这个方法问题多多,因为在Firefox和Safari等浏览器上,getYear始终返回年份与1900 年之间的差,比如1998年返回98,而2009年则会显示109,如果大家都这么处理也好,要加一起加,微软自己在IE浏览器中把getYear给修正了,可Firefox(最新版本也没修正这个问题)还蒙在鼓里,仍老老实实的按照原有规则解析getYear,本来都可以指望用户自行修正,这样一来都没得用,于是getFullYear、getUTCFullYear就出生了。

1、getYear()函数

使用getYear()方法可返回两位或四位数的年份,用getYear()返回的数并不一定是4位的!处于1900年和1999年间的getYear()方法返回的只有两位数。在此之前的或是在此之后的年份返回的都是四位数的,比如2009年,Javascript解析器应该是返回2009的,而浏览器则计算返回109。这应该是早期的约定,而IE埋头改掉了。该函数已经被逐渐废弃并不推荐使用。

<script type="text/javascript"> 
var d = new Date(); 
document.write(d.getYear());//IE输出2009,FIREFOX输出109 
</script>

2、getFullYea()函数

getFullYear函数则不存在此问题。getFullYear()方法可返回一个四位数年份,这样大家(IE和FIREFOX等)都不需要运算,直接把解析值输出来即可。

<script type="text/javascript"> 
var d = new Date(); 
document.write(d.getFullYear());//IE输出2009,FIREFOX输出2009 
</script>

3、getUTCFullYear()函数

getUTCFullYear()函数则是根据UTC时间返回了四位数来代表年份。与getFullYear()方法理论角度是完全不同,虽然在大部分的时间里输出是相同的,但是假如当天日期是12月31日或1月1日,则getUTCFullYear() 返回值与getFullYear()返回值就有可能不同,具体取决于当地时区和UTC通用时间之间的关系,也就是差值。

<script type="text/javascript"> 
var d = new Date(); 
document.write(d.getUTCFullYear());//IE输出2009,FIREFOX输出2009 
</script>

比如在中国大陆、、香港、澳门、蒙古国、台湾、新加坡、马来西亚、菲律宾等地区的本地时间比UTC快8小时,记作UTC+8,意思就是比UTC时间快8小时。减的类似理解,比如UTC-10等。
Javascript 相关文章推荐
Javascript入门学习资料收集整理篇
Jul 06 Javascript
JavaScript Tips 使用DocumentFragment加快DOM渲染速度
Jun 28 Javascript
超级有用的13个基于jQuery的内容滚动插件和教程
Jul 31 Javascript
javascript运动详解
Jul 06 Javascript
教你JS中的运算符乘方、开方及变量格式转换
Aug 09 Javascript
微信小程序如何获知用户运行小程序的场景教程
May 17 Javascript
vue.js数据绑定的方法(单向、双向和一次性绑定)
Jul 13 Javascript
Angular CLI在Angular项目中如何使用scss详解
Apr 10 Javascript
vue实现底部菜单功能
Jul 24 Javascript
解决node-sass偶尔安装失败的方法小结
Dec 05 Javascript
vue实现员工信息录入功能
Jun 11 Javascript
vue内置组件keep-alive事件动态缓存实例
Oct 30 Javascript
chrome原生方法之数组
Nov 30 #Javascript
使用Javascript接收get传递的值的代码
Nov 30 #Javascript
关于递归运算的顺序测试代码
Nov 30 #Javascript
对javascript的一点点认识总结《javascript高级程序设计》读书笔记
Nov 30 #Javascript
Jquery插件之打造自定义的select标签
Nov 30 #Javascript
jquery中dom操作和事件的实例学习 仿yahoo邮箱登录框的提示效果
Nov 30 #Javascript
jquery中dom操作和事件的实例学习-表单验证
Nov 30 #Javascript
You might like
PHP 实用代码收集
2010/01/22 PHP
yii2 modal弹窗之ActiveForm ajax表单异步验证
2016/06/13 PHP
PHP数字金额转换成中文大写显示
2019/01/05 PHP
免费空间广告万能消除代码
2006/09/04 Javascript
Javascript数组的排序 sort()方法和reverse()方法
2012/06/04 Javascript
点击隐藏页面左栏或右栏实现js代码
2013/04/01 Javascript
extJS中常用的4种Ajax异步提交方式
2014/03/07 Javascript
JavaScript运行过程中的“预编译阶段”和“执行阶段”
2015/12/16 Javascript
微信小程序 Video API实例详解
2016/10/02 Javascript
微信小程序 数据交互与渲染实例详解
2017/01/21 Javascript
javascript编程实现栈的方法详解【经典数据结构】
2017/04/11 Javascript
关于vue中watch检测到不到对象属性的变化的解决方法
2018/02/08 Javascript
vue动态绑定组件子父组件多表单验证功能的实现代码
2018/05/14 Javascript
vue的keep-alive用法技巧
2019/08/15 Javascript
微信小程序HTTP接口请求封装代码实例
2019/09/05 Javascript
详解vue或uni-app的跨域问题解决方案
2020/02/21 Javascript
javascript设计模式 ? 装饰模式原理与应用实例分析
2020/04/14 Javascript
微信小程序pinker组件使用实现自动相减日期
2020/05/07 Javascript
JavaScript实现H5接金币功能(实例代码)
2021/02/22 Javascript
[06:07]DOTA2-DPC中国联赛 正赛 Ehome vs VG 选手采访
2021/03/11 DOTA
Python装饰器入门学习教程(九步学习)
2016/01/28 Python
python制作小说爬虫实录
2017/08/14 Python
Python中的上下文管理器和with语句的使用
2018/04/17 Python
Python实现识别图片内容的方法分析
2018/07/11 Python
python高斯分布概率密度函数的使用详解
2019/07/10 Python
Python的Tkinter点击按钮触发事件的例子
2019/07/19 Python
python Elasticsearch索引建立和数据的上传详解
2019/08/04 Python
通过实例了解python property属性
2019/11/01 Python
Anaconda使用IDLE的实现示例
2020/09/23 Python
python 实现图片修复(可用于去水印)
2020/11/19 Python
利用python如何实现猫捉老鼠小游戏
2020/12/04 Python
给老婆大人的检讨书
2014/02/24 职场文书
大学生演讲稿
2014/04/25 职场文书
我的生日感言
2015/08/03 职场文书
培训感想范文
2015/08/07 职场文书
2016年法制宣传月活动总结
2016/04/01 职场文书