`
yanyanquan
  • 浏览: 452979 次
  • 性别: Icon_minigender_1
  • 来自: 江门
社区版块
存档分类
最新评论

js 时间增加函数

 
阅读更多

<script type="text/javascript">
function printLine(s){
    document.write(s,"<br />");
}
function timeParse(timeString,pattern){
    var date=new Date();
    var match=timeString.match(pattern);
    date.setYear(parseInt(match[1],10));
    date.setMonth(parseInt(match[2],10)-1);
    date.setDate(parseInt(match[3],10));
    date.setHours(parseInt(match[4],10));
    date.setMinutes(parseInt(match[5],10));
    date.setSeconds(0);
    return date;
}
Date.prototype.addTime=function(timeSpan){
    this.setYear(this.getYear()+timeSpan.years);
    this.setMonth(this.getMonth()+timeSpan.months);
    this.setDate(this.getDate()+timeSpan.days);
    this.setHours(this.getHours()+timeSpan.hours);
    this.setMinutes(this.getMinutes()+timeSpan.minutes);
}
Date.prototype.toString=function(){
    return this.getYear()+"-"
        +(this.getMonth()+1)+"-"
        +this.getDate()+" "
        +this.getHours()+":"
        +this.getMinutes();
}
function timeSpanParse(timeSpanString,pattern){
    var match=timeSpanString.match(pattern);
    var y=match[1]==""?0:parseInt(match[1]);
    var mon=match[2]==""?0:parseInt(match[2]);
    var d=match[3]==""?0:parseInt(match[3]);
    var h=match[4]==""?0:parseInt(match[4]);
    var m=match[5]==""?0:parseInt(match[5]);
    return {years:y,months:mon,days:d,hours:h,minutes:m};
}
var reg_time=/^(\d{1,4})\-(\d{1,2})\-(\d{1,2}) (\d{1,2}):(\d{1,2})$/;
var date=timeParse("2008-8-8 09:00",reg_time);
printLine(date);
var reg_timeSpan=/^(?:(\d+)年)?(?:(\d+)个?月)?(?:(\d+)天)?(?:(\d+)小时)?(?:(\d+)分钟?)?$/;


var timeSpan=timeSpanParse("10分",reg_timeSpan);
date.addTime(timeSpan);
printLine("增加10分钟后:"+date);


timeSpan=timeSpanParse("3小时10分",reg_timeSpan);
date.addTime(timeSpan);
printLine("增加3小时10分后:"+date);


timeSpan=timeSpanParse("2天3小时10分",reg_timeSpan);
date.addTime(timeSpan);
printLine("增加2天1小时5分后:"+date);


timeSpan=timeSpanParse("1个月1天1小时1分",reg_timeSpan);
date.addTime(timeSpan);
printLine("增加1个月1天1小时1分后:"+date);

timeSpan=timeSpanParse("2年1小时1分钟",reg_timeSpan);
date.addTime(timeSpan);
printLine("增加2年1小时1分钟后:"+date);
</script>
 
分享到:
评论

相关推荐

    js时间+—函数.txt

    `DateAdd`函数的主要目的是接收三个参数:时间间隔类型(如年、月、日等)、增加的时间数量以及原始日期对象,并返回一个新的日期对象,该对象根据提供的间隔和数量进行了相应的调整。 #### 参数解释 - **interval...

    js 时间函数应用加、减、比较、格式转换的示例代码

    标题中提到的“js时间函数应用加、减、比较、格式转换的示例代码”,涉及了JavaScript中对日期和时间进行操作的几个常见需求,包括时间的增加、减少、比较以及格式化转换。 描述部分则是对这些需求的简短说明,指出...

    JavaScript字符串函数大全

    除了以上介绍的字符串处理函数外,JavaScript还提供了一系列用于处理日期和时间的函数: - **DateValue(x)**:返回表示给定日期的日期值。 - **TimeValue(x)**:返回表示给定时间的时间值。 - **Year(x)**、**Month...

    js函数扩展

    "js函数扩展"这个主题深入探讨了如何利用JavaScript的特性来增强和优化函数的使用。这篇博客文章(链接:https://ninnd.iteye.com/blog/1168733)可能涵盖了诸如函数柯里化、高阶函数、闭包、以及箭头函数等高级概念...

    javascript 常用验证函数.doc

    - DIV层操作:通过JavaScript操作CSS属性实现拖放、显示、隐藏、移动和增加。 - TABLE操作:客户端动态增删表格行和列,模拟进度条和滚动列表。 - 对象嵌入:如使用object标签嵌入播放器和Flash,并与JavaScript交互...

    javascript时间函数大全.docx

    以下是对JavaScript时间函数的详细解释: 1. **取得当前时间**: 使用`new Date()`构造函数可以创建一个表示当前日期和时间的新Date对象。 2. **已知年、月、日转换成日期型数据**: 首先,通过字符串操作将日期...

    js日期时间操作函数.pdf

    该函数功能文档中未给出具体描述,但根据函数命名和一般用法推断,此函数可能用于在日期上增加指定的时间量,如天数、月数或年数。 4. 日期的差值计算:Date.prototype.DateDiff 此函数用于计算两个日期之间的...

    全面兼容的javascript时间格式化函数(比较实用)

    在探讨JavaScript时间格式化函数之前,了解一些关于JavaScript中的时间对象是很有必要的。JavaScript中的Date对象用于处理日期和时间。Date对象支持多种方法,例如获取年、月、日、小时、分钟和秒等。不同的浏览器和...

    JS按钮倒计时函数

    倒计时的核心是通过不断递减的时间值来模拟时间的流逝,通常会用到`setTimeout`或者`setInterval`函数来定时执行某个操作。在本例中,使用了`setTimeout`来每隔一段时间(这里是1秒)执行一次递减操作。 ### 二、...

    经常用到的javascript日期函数库啊

    ### JavaScript 日期函数库知识点详解 #### 一、引言 在JavaScript开发中,处理日期时间是一项常见的需求。为了简化这一过程,许多开发者选择利用自定义的日期函数库或者现有的第三方库来完成复杂的日期时间操作。...

    JS时间拖动条

    在JavaScript(JS)编程中,实现一个时间拖动条功能是一项常见的需求,特别是在涉及到多媒体播放、视频剪辑或时间控制的场景中。本项目“JS时间拖动条”旨在模仿QQ影音中的视频剪辑拖动条,提供用户友好的交互体验。...

    Utiljs一些很实用的javaScript函数封装集合

    Util.js 是一个非常实用的JavaScript库,它封装了一系列常见的功能函数,旨在简化开发过程,提高代码的可复用性和效率。这个库涵盖了多种类别,包括处理数组、浏览器特性、日期操作、函数辅助、数学计算、媒体操作、...

    我写的调用网页的javascript函数!请大家帮忙看看!

    而`call_js`可能是一个JavaScript文件,提供了被调用的函数。查看这两个文件的具体内容将有助于更深入地理解问题所在,包括函数定义、如何调用以及可能遇到的错误或需求。 在这个场景中,我们需要检查`client_str....

    一个JavaScript多线程函数库 使用说明

    JavaScript,作为一种广泛应用于Web开发的脚本语言,一直以来都是单线程执行的,这限制了其在处理大量计算任务或长时间运行操作时的性能。然而,随着技术的发展,JavaScript已经引入了多线程功能,以应对现代Web应用...

    JavaScript装饰器函数Decorator实例详解.docx

    这种设计模式在JavaScript中尤其有用,因为它提供了增加功能的灵活性,而无需传统的继承方式。 在给定的示例中,我们看到了几个装饰器函数的用法: 1. **动态添加`onload`监听函数**: 这个例子展示了如何使用...

    JavaScript实用小函数(三)

    总结来说,"JavaScript实用小函数(三)"的主题可能涉及到JavaScript日期处理的高级技巧,通过学习Calendar库的源码,开发者可以掌握日期和时间操作的实用方法,进一步优化他们的JavaScript应用。在实际工作中,这些...

    面向函数式编程-讲解

    `jsFunction`可能包含的就是关于JavaScript中的函数式编程实践或示例。 总的来说,函数式编程提供了一种不同的思考问题和解决问题的方式,它在很多方面都有其独特的优点,但也需要开发者根据项目需求和团队背景权衡...

    js获取时间函数及扩展函数的方法

    总的来说,JavaScript的Date对象和相关的扩展函数提供了强大的日期和时间处理能力,能够帮助开发者在前端开发中进行复杂的日期操作,无论是简单的显示格式化还是复杂的日期计算。通过理解并熟练运用这些方法,开发者...

    带时间的日期选择框(JS)

    "带时间的日期选择框(JS)"是针对这种需求的一个JavaScript库,名为Datetime.js。这个库允许用户不仅选择日期,还能同时选择具体的时间,包括小时、分钟和秒,从而提供更加精确的输入选项。 Datetime.js 的使用方法...

    Eclipse的JavaScript插件 JSEditor

    4. **代码重构**:JSEditor支持JavaScript代码重构,包括重命名变量、提取函数等操作,这些操作对大型项目尤为重要,因为它们可以保持代码的整洁和一致性。 5. **调试工具**:除了编辑功能,JSEditor还集成了...

Global site tag (gtag.js) - Google Analytics