最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

擴展javascript的Date方法實現代碼(prototype)

 更新時間:2010年11月20日 20:24:58   作者:  
長期從事C#的開發(fā),被C#影響著我的思維。C#中DateTime的操作就很方便,于是就參考它對js的Date做了擴展。
最近項目的部分功能正在重構,前端也基本上推翻了原來的設計,在之前半年的積累上有了新的方案。這幾天在做前端的重構和設計,遇到了一些問題。因為這個模塊最主要的還是對時間的控制,大量的操作js的Date對象,可是js原生的Date方法太少了,操作起來太不方便。于是打算擴展下Date的prototype。

長期從事C#的開發(fā),被C#影響著我的思維。C#中DateTime的操作就很方便,于是就參考它對js的Date做了擴展。
復制代碼 代碼如下:

//將指定的毫秒數加到此實例的值上
Date.prototype.addMilliseconds = function (value) {
var millisecond = this.getMilliseconds();
this.setMilliseconds(millisecond + value);
return this;
};
//將指定的秒數加到此實例的值上
Date.prototype.addSeconds = function (value) {
var second = this.getSeconds();
this.setSeconds(second + value);
return this;
};
//將指定的分鐘數加到此實例的值上
Date.prototype.addMinutes = function (value) {
var minute = this.addMinutes();
this.setMinutes(minute + value);
return this;
};
//將指定的小時數加到此實例的值上
Date.prototype.addHours = function (value) {
var hour = this.getHours();
this.setHours(hour + value);
return this;
};
//將指定的天數加到此實例的值上
Date.prototype.addDays = function (value) {
var date = this.getDate();
this.setDate(date + value);
return this;
};
//將指定的星期數加到此實例的值上
Date.prototype.addWeeks = function (value) {
return this.addDays(value * 7);
};
//將指定的月份數加到此實例的值上
Date.prototype.addMonths = function (value) {
var month = this.getMonth();
this.setMonth(month + value);
return this;
};
//將指定的年份數加到此實例的值上
Date.prototype.addYears = function (value) {
var year = this.getFullYear();
this.setFullYear(year + value);
return this;
};
//格式化日期顯示 format="yyyy-MM-dd hh:mm:ss";
Date.prototype.format = function (format) {
var o = {
"M+": this.getMonth() + 1, //month
"d+": this.getDate(), //day
"h+": this.getHours(), //hour
"m+": this.getMinutes(), //minute
"s+": this.getSeconds(), //second
"q+": Math.floor((this.getMonth() + 3) / 3), //quarter
"S": this.getMilliseconds() //millisecond
}
if (/(y+)/.test(format)) {
format = format.replace(RegExp.$1, (this.getFullYear() + "").substr(4 - RegExp.$1.length));
}
for (var k in o) {
if (new RegExp("(" + k + ")").test(format)) {
format = format.replace(RegExp.$1, RegExp.$1.length == 1 ? o[k] : ("00" + o[k]).substr(("" + o[k]).length));
}
}
return format;
}

使用方法我想應該不用多說了,就是:
復制代碼 代碼如下:

var date = new Date();
date.addHours(1);
date.addYears(2);
document.write(date.format('yyyy-MM-dd hh:mm:ss'));

希望這個擴展方法可以幫助到大家。

相關文章

  • js中for in的用法示例解析

    js中for in的用法示例解析

    使用js的朋友對其中for in的并不陌生吧,下面用示例為大家介紹下其具體使用方法
    2013-12-12
  • JavaScript中常見的高階函數總結

    JavaScript中常見的高階函數總結

    JavaScript的函數其實都指向某個變量,既然變量可以指向函數,函數的參數能接收變量,那么一個函數就可以接收另一個函數作為參數,這種函數就稱之為高階函數,這篇文章主要給大家介紹了關于JavaScript中常見的高階函數,需要的朋友可以參考下
    2022-02-02
  • NodeJs中的非阻塞方法介紹

    NodeJs中的非阻塞方法介紹

    NodeJs中的非阻塞方法介紹,需要的朋友可以參考下
    2012-06-06
  • bootstrap中模態(tài)框、模態(tài)框的屬性實例詳解

    bootstrap中模態(tài)框、模態(tài)框的屬性實例詳解

    這篇文章主要介紹了bootstrap中模態(tài)框、模態(tài)框的屬性實例詳解,非常不錯,具有參考借鑒價值,需要的朋友可以參考下
    2017-02-02
  • JavaScript?雙位非運算(~~?操作符)使用場景實例探索

    JavaScript?雙位非運算(~~?操作符)使用場景實例探索

    本文為大家介紹JavaScript中雙位非運算?~~,?~~?操作符是一個強大且經常被忽視的特性,它提供了一種快速、簡潔的方式來處理數字和執(zhí)行類型轉換,通??梢员挥糜跀祵W計算和類型轉換,我們先了解一下?~~?的基本概念和它的一些應用場景
    2024-01-01
  • js中undefined該怎么判斷淺析

    js中undefined該怎么判斷淺析

    可能很多朋友認為undefined是在js中未定義變量時才會提示的錯誤,其實不然undefined 是js中的一特殊的變量,我們也可以提前定義哦,下面這篇文章主要給大家介紹了關于js中undefined該怎么判斷的相關資料,需要的朋友可以參考下
    2023-04-04
  • 關于JS通過google翻譯插件實現多語言版本

    關于JS通過google翻譯插件實現多語言版本

    這篇文章主要介紹了JS通過google翻譯插件實現多語言版本,本文通過實例代碼給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2023-06-06
  • JavaScript中的方法調用詳細介紹

    JavaScript中的方法調用詳細介紹

    這篇文章主要介紹了JavaScript中的方法調用詳細介紹,JavaScript中,如果function屬于一個對象,那么通過對象來訪問該function的行為稱之為“方法調用”,需要的朋友可以參考下
    2014-12-12
  • 簡單實用的js調試logger組件實現代碼

    簡單實用的js調試logger組件實現代碼

    開發(fā)js組件的時間調試總是麻煩的,最常用的就是用alert或者debugger來測試js的運行狀態(tài)。
    2010-11-11
  • JS中sort函數排序用法實例分析

    JS中sort函數排序用法實例分析

    這篇文章主要介紹了JS中sort函數排序用法,結合實例形式詳細分析了sort函數的功能、原理及實現數組排序的相關技巧,代碼中備有詳盡的注釋便于理解,需要的朋友可以參考下
    2016-06-06

最新評論

邹城市| 云浮市| 新民市| 稷山县| 稻城县| 台中市| 正镶白旗| 剑阁县| 南充市| 宜宾县| 红原县| 余庆县| 蓬溪县| 海口市| 东平县| 土默特右旗| 吉林省| 平谷区| 金平| 山西省| 龙里县| 嵊州市| 和田县| 建昌县| 临泉县| 绥德县| 海盐县| 祁东县| 萨嘎县| 乌兰县| 伊春市| 大港区| 青岛市| 合水县| 枣强县| 西丰县| 辛集市| 靖安县| 涿州市| 额敏县| 绥江县|