文档章节

js 时间的封装

别人说我名字很长
 别人说我名字很长
发布于 2015/11/26 10:23
字数 205
阅读 68
收藏 2

js的时间对象的操作很频繁,大象封装了下时间对象,使用起来是更方便,下面上代码

<script type="text/javascript">	

    //时间对象封装
    function myDate2(date){
    	this.date = new Date(date);
    	this.Y = function(){
    		return this.date.getFullYear();
    	}
    	this.m = function(){
    		var m = (this.date.getMonth()+1).toString();
    		if(m.length==1) return "0"+m;
    		return m;
    	}
    	this.d = function(){
    		var d = this.date.getDate().toString();
    		if(d.length==1) return "0"+d;
    		return d;
    	}
    }

    //时间对象格式化
    myDate2.prototype.Format = function(format){
    	if(format=="yyyy"){
    		return this.Y();
    	}else if(format=="yyyy-mm"){
    		return this.Y()+"-"+this.m();
    	}else if(format=="yyyy-mm-dd"){
    		return this.Y()+"-"+this.m()+"-"+this.d();
    	}
    	throw new error("非法的格式");
    }

    //时间对象加减
    myDate2.prototype.AddDate = function(Y,m,d){
    	this.date.setFullYear(parseInt(this.Y())+Y);
    	this.date.setMonth(parseInt(this.m())+m-1);
    	this.date.setDate(parseInt(this.d())+d);
    	return this;
    }

    //工厂
    function myDate(date){
    	return new myDate2(date);
    }

    //举个栗子
    var d = myDate("2016-02-14");//将字符串时间实例化myDate2对象
    d.AddDate(0,0,10);//加10天
    console.log(d.Format("yyyy-mm-dd"));//格式化输出2016-02-24
</script>




© 著作权归作者所有

共有 人打赏支持
别人说我名字很长
粉丝 55
博文 254
码字总数 103692
作品 0
济南
程序员
React Native 与原生模块数据通信(一)(iOS)

(一)iOS日历模块封装演示 下面开始演示如何封装一个iOS日历原生模块,让JavaScript可以进行访问到iOS平台日历的功能。 在React Native中,原生模块就是一个Objective-C类,该实现了RCTBridge...

manofit
05/24
0
0
关于时间的那些事--PHP、JavaScript、MySQL操作时间

PHP篇 PHP中时间操作单位是秒 一、将时间戳转为普通日期格式 //当前时间戳time();//当前时间格式date("Y-m-d H:i:s",time());//昨天时间格式date("Y-m-d,H:i:s",time()-3600*24); 二、将普通...

Martini
09/27
0
0
使用jQuery架构javascript基础体系

jQuery的使用开始成为javascript开发者的主选产品,但如果没有一个整体的规划,简单的拿来主义势必带来后期维护成本的增加,大量的 jQuery插件如同一把双刃剑,一方面大大节省了开发时间与周...

林文安
2012/05/30
0
0
IE开发者工具 - 轻松调试javascript.

javascript 语言非常强大, 在web领域应用非常多, 可对于许多新手, 甚至组长级人物来说, 也未能说完全掌握javascript的全面, 本人平时使用jquery的时间很多, 所以对js方面有所了解, 同时, 我也...

Tuesday
2013/07/26
0
15
js面向对象的一些初级知识总结~~

javascript作为一门解释性脚本语言,有着其独特的魅力.既具有函数编程的特性,又具有面向对象的特征.以前的开发中,大多是使用了javascript的函数式编程,最近,发现其的面向对象也有一定的优势,...

乔康007
2013/02/24
0
0

没有更多内容

加载失败,请刷新页面

加载更多

python:关于读取文件的指定行的问题

先来造一个文件:就叫做 test.txt吧,内容是下面这个样子: 表头1,数据12,数据23,数据34,数据45,数据56,数据67,数据7 那么我们并不打算把这个表头给读出来 怎么办呢? 先来打开文...

Oh_really
7分钟前
0
0
Rails 用现代 Rails 逃离单页面应用 “兔子洞”

在工作共总是觉得turbolinks非常爽,但是却总是被说成是过时的技术,大家都喜欢spa,哪怕不用的spa的人也是禁用掉的多,找不到很好的理由劝说别人使用,这篇文章说的很到位,或者说至少是牛人...

wmzsonic
11分钟前
0
0
Hive 分布式搭建,Spark集成Hive记录

本帖详细介绍搭建步骤,仅仅记录自己搭建过程以及采坑经历。 前提环境: Hadoop集群 版本2.7.2 Spark集群 版本2.1.0 Linux版本 Centos7 准备搭建 MySql版本5.5.61 ,Hive-2.1.0 去官网下载M...

我爱春天的毛毛雨
14分钟前
0
0
打包QML程序

1、windeployqt执行路径(D:\Qt\5.12.0\msvc2017_64\bin)加入到PATH中 2、使用Qt自带的命令行交互 Command 终端(Qt 5.12.0 64-bit for Desktop (MSVC 2017))切换到 Release 编译成功的exe...

渣渣曦
51分钟前
4
0
优秀互联网高级测试工程师应该具备的能力

概述 在之前写的互联网高级测试工程师至少具备的能力一文中,提到了测试工程师至少具备的能力,但是并没有提到优秀测试工程师应该具备的能力,下文简单的谈一谈。当然这些全部都是我的个人理...

Sam哥哥聊技术
55分钟前
4
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部