js实现的日期操作类DateTime函数代码_javascript技巧
方法注解: |
将指定的天数加到此实例的值上。 |
将指定的小时数加到此实例的值上。 |
将指定的分钟数加到此实例的值上。 |
将指定的毫秒数加到此实例的值上。 |
将指定的月份数加到此实例的值上。 |
将指定的秒数加到此实例的值上。 |
将指定的年份数加到此实例的值上。 |
将此实例的值与指定的 Date 值相比较,并指示此实例是早于、等于还是晚于指定的 Date 值。 |
返回一个数值相同的新DateTime对象 |
返回一个值,该值指示此实例是否与指定的 DateTime 实例相等。 |
获取此实例的日期部分。 |
获取此实例所表示的日期为该月中的第几天。 |
获取此实例所表示的日期是星期几。 |
获取此实例所表示日期的小时部分。 |
获取此实例所表示日期的分钟部分。 |
获取此实例所表示日期的毫秒部分。 |
获取此实例所表示日期的月份部分。 |
获取此实例的下个月一日的DateTime对象 |
获取此实例的下一个周日的DateTime对象 |
获取此实例的下一个周日的DateTime对象 |
获取此实例所表示日期的秒部分。 |
返回此实例的Date值 |
获取此实例所表示日期的年份部分。 |
指示此实例是否是DateTime对象 |
将当前 DateTime 对象的值转换为其等效的短日期字符串表示形式。 |
将当前 DateTime 对象的值转换为其等效的短时间字符串表示形式。 |
将当前 DateTime 对象的值转换为其等效的字符串表示形式。 |
验证Add系列的方法参数是否合法 |
继承自Date的方法 |
比较 DateTime 的两个实例,并返回它们相对值的指示。 |
返回指定年和月中的天数。 |
返回一个值,该值指示 DateTime 的两个实例是否相等。 |
返回指定的年份是否为闰年的指示。 |
获取一个 DateTime 对象,该对象设置为此计算机上的当前日期和时间,表示为本地时间。 |
将日期和时间的指定字符串表示形式转换为其等效的 DateTime。 |
获取当前日期,其时间组成部分设置为 00:00:00。 |
//表示时间上的一刻,通常以日期和当天的时间表示。
function DateTime(year, month, day, hour, min, sec, millisec){
var d = new Date();
if (year || year == 0){
d.setFullYear(year);
}
if (month || month == 0){
d.setMonth(month - 1);
}
if (day || day == 0){
d.setDate(day);
}
if (hour || hour == 0){
d.setHours(hour);
}
if (min || min == 0){
d.setMinutes(min);
}
if (sec || sec == 0){
d.setSeconds(sec);
}
if (millisec || millisec == 0){
d.setMilliseconds(millisec);
}
//将指定的天数加到此实例的值上。
this.AddDays = function(value){
if(!ValidateAddMethodParam(value)){
return null;
}
var result = this.Clone();
result.GetValue().setDate(result.GetDay() + value);
return result;
}
//将指定的小时数加到此实例的值上。
this.AddHours = function(value){
if(!ValidateAddMethodParam(value)){
return null;
}
var result = this.Clone();
result.GetValue().setHours(result.GetHour() + value);
return result;
}
//将指定的分钟数加到此实例的值上。
this.AddMinutes = function(value){
if(!ValidateAddMethodParam(value)){
return null;
}
var result = this.Clone();
result.GetValue().setMinutes(result.GetMinute() + value);
return result;
}
//将指定的毫秒数加到此实例的值上。
this.AddMilliseconds = function(value){
if(!ValidateAddMethodParam(value)){
return null;
}
var result = this.Clone();
result.GetValue().setMilliseconds(result.GetMillisecond() + value);
return result;
}
//将指定的月份数加到此实例的值上。
this.AddMonths = function(value){
if(!ValidateAddMethodParam(value)){
return null;
}
var result = this.Clone();
result.GetValue().setMonth(result.GetValue().getMonth() + value);
return result;
}
//将指定的秒数加到此实例的值上。
this.AddSeconds = function(value){
if(!ValidateAddMethodParam(value)){
return null;
}
var result = this.Clone();
result.GetValue().setSeconds(result.GetSecond() + value);
return result;
}
//将指定的年份数加到此实例的值上。
this.AddYears = function(value){
if(!ValidateAddMethodParam(value)){
return null;
}
var result = this.Clone();
result.GetValue().setFullYear(result.GetYear() + value);
return result;
}
//将此实例的值与指定的 Date 值相比较,并指示此实例是早于、等于还是晚于指定的 Date 值。
this.CompareTo = function(other){
var internalTicks = other.getTime();
var num2 = d.getTime();
if (num2 > internalTicks)
{
return 1;
}
if (num2 {
return -1;
}
return 0;
}
//返回一个数值相同的新DateTime对象
this.Clone = function(){
return new DateTime(
this.GetYear()
,this.GetMonth()
,this.GetDay()
,this.GetHour()
,this.GetMinute()
,this.GetSecond()
,this.GetMillisecond());
}
//返回一个值,该值指示此实例是否与指定的 DateTime 实例相等。
this.Equals = function(other){
return this.CompareTo(other) == 0;
}
//获取此实例的日期部分。
this.GetDate = function(){
var result = new DateTime(d.getFullYear(), d.getMonth(), d.getDate(), 0, 0, 0, 0);
return result ;
}
//获取此实例所表示的日期为该月中的第几天。
this.GetDay = function(){
return d.getDate();
}
//获取此实例所表示的日期是星期几。
this.GetDayOfWeek = function(){
return d.getDay();
}
//获取此实例所表示日期的小时部分。
this.GetHour = function(){
return d.getHours();
}
//获取此实例所表示日期的分钟部分。
this.GetMinute = function(){
return d.getMinutes();
}
//获取此实例所表示日期的毫秒部分。
this.GetMillisecond = function(){
return d.getMilliseconds();
}
//获取此实例所表示日期的月份部分。
this.GetMonth = function(){
return d.getMonth() + 1;
}
//获取此实例的下个月一日的DateTime对象
this.GetNextMonthFirstDay = function(){
var result = new DateTime(this.GetYear(), this.GetMonth(), 1, 0, 0, 0, 0);
result = result.AddMonths(1);
return result;
}
//获取此实例的下一个周日的DateTime对象
this.GetNextWeekFirstDay = function(){
var result = this.GetDate();
return result.AddDays(7 - result.GetDayOfWeek());
}
//获取此实例的下一个周日的DateTime对象
this.GetNextYearFirstDay = function(){
return new DateTime(this.GetYear() + 1, 1, 1, 0, 0, 0, 0);
}
//获取此实例所表示日期的秒部分。
this.GetSecond = function(){
return d.getSeconds();
}
//返回此实例的Date值
this.GetValue = function(){
return d;
}
//获取此实例所表示日期的年份部分。
this.GetYear = function(){
return d.getFullYear();
}
//指示此实例是否是DateTime对象
this.IsDateTime = function(){}
//将当前 DateTime 对象的值转换为其等效的短日期字符串表示形式。
this.ToShortDateString = function(){
var result = "";
result = d.getFullYear() + "-" + (d.getMonth() + 1) + "-" + d.getDate();
return result;
}
//将当前 DateTime 对象的值转换为其等效的短时间字符串表示形式。
this.ToShortTimeString = function(){
var result = "";
result = d.getHours() + ":" + d.getMinutes() + ":" + d.getSeconds();
return result;
}
//将当前 DateTime 对象的值转换为其等效的字符串表示形式。
this.ToString = function(format){
if(typeof(format) == "string"){
}
return this.ToShortDateString() + " " + this.ToShortTimeString();
}
//验证Add系列的方法参数是否合法
function ValidateAddMethodParam(param){
if(typeof(param) != "number"){
return false;
}
return true;
}
//继承自Date的方法
this.getTime = function(){
return d.getTime();
}
}
//比较 DateTime 的两个实例,并返回它们相对值的指示。
DateTime.Compare = function(d1, d2){
return d1.CompareTo(d2);
}
//返回指定年和月中的天数。
DateTime.DaysInMonth = function(year, month){
if ((month 12))
{
return "月份[" + month + "]超出范围";
}
var numArray = DateTime.IsLeapYear(year) ? DateTime.DaysToMonth366 : DateTime.DaysToMonth365;
return (numArray[month] - numArray[month - 1]);
}
//返回一个值,该值指示 DateTime 的两个实例是否相等。
DateTime.Equals = function(d1, d2){
return d1.CompareTo(d2) == 0;
}
//返回指定的年份是否为闰年的指示。
DateTime.IsLeapYear = function(year)
{
if ((year 0x270f))
{
return "年份[" + year + "]超出范围";
}
if ((year % 4) != 0)
{
return false;
}
if ((year % 100) == 0)
{
return ((year % 400) == 0);
}
return true;
}
//获取一个 DateTime 对象,该对象设置为此计算机上的当前日期和时间,表示为本地时间。
DateTime.Now = new DateTime();
//将日期和时间的指定字符串表示形式转换为其等效的 DateTime。
DateTime.Parse = function(s){
var result = new DateTime();
var value = result.GetValue();
value.setHours(0,0,0,0);
var dateRex = /\b[1-2][0-9][0-9][0-9][-]\d{1,2}[-]\d{1,2}\b/i;
if(dateRex.test(s)){
var dateStr = s.match(dateRex)[0];
try{
var dateParts = dateStr.split("-");
var year = dateParts[0] - 0;
var month = dateParts[1] - 1;
var day = dateParts[2] - 0;
value.setFullYear(year,month,day);
}catch(ex){
return null;
}
var timeRex = /\b\d{1,2}[:]\d{1,2}[:]\d{1,2}\b/i;
if(timeRex.test(s)){
var timeStr = s.match(timeRex)[0];
try{
var timeParts = timeStr.split(":");
var hour = timeParts[0] - 0;
var min = timeParts[1] - 0;
var sec = timeParts[2] - 0;
value.setHours(hour,min,sec);
}catch(ex){
}
}
}else{
return null;
}
return result;
}
//获取当前日期,其时间组成部分设置为 00:00:00。
DateTime.Today = new DateTime(null, null, null, 0, 0, 0, 0);
//静态字段
DateTime.DaysToMonth365 = [ 0, 0x1f, 0x3b, 90, 120, 0x97, 0xb5, 0xd4, 0xf3, 0x111, 0x130, 0x14e, 0x16d ];
DateTime.DaysToMonth366 = [ 0, 0x1f, 60, 0x5b, 0x79, 0x98, 0xb6, 0xd5, 0xf4, 0x112, 0x131, 0x14f, 0x16e ];

熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

記事本++7.3.1
好用且免費的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強大的PHP整合開發環境

Dreamweaver CS6
視覺化網頁開發工具

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

人臉偵測辨識技術已經是一個比較成熟且應用廣泛的技術。而目前最廣泛的網路應用語言非JS莫屬,在Web前端實現人臉偵測辨識相比後端的人臉辨識有優勢也有弱勢。優點包括減少網路互動、即時識別,大大縮短了使用者等待時間,提高了使用者體驗;弱勢是:受到模型大小限制,其中準確率也有限。如何在web端使用js實現人臉偵測呢?為了實現Web端人臉識別,需要熟悉相關的程式語言和技術,如JavaScript、HTML、CSS、WebRTC等。同時也需要掌握相關的電腦視覺和人工智慧技術。值得注意的是,由於Web端的計

如何使用PHP和JS創建股票蠟燭圖股票蠟燭圖是股票市場中常見的技術分析圖形,透過繪製股票的開盤價、收盤價、最高價和最低價等數據,幫助投資者更直觀地了解股票的價格波動情形。本文將教你如何使用PHP和JS創建股票蠟燭圖,並附上具體的程式碼範例。一、準備工作在開始之前,我們需要準備以下環境:1.一台運行PHP的伺服器2.一個支援HTML5和Canvas的瀏覽器3

股票分析必備工具:學習PHP和JS繪製蠟燭圖的步驟,需要具體程式碼範例隨著網路和科技的快速發展,股票交易已成為許多投資者的重要途徑之一。而股票分析是投資人決策的重要一環,其中蠟燭圖被廣泛應用於技術分析。學習如何使用PHP和JS繪製蠟燭圖將為投資者提供更多直觀的信息,幫助他們更好地做出決策。蠟燭圖是一種以蠟燭形狀來展示股票價格的技術圖表。它展示了股票價格的

如何使用JS和百度地圖實現地圖點擊事件處理功能概述:在網路開發中,經常需要使用地圖功能來展示地理位置和地理資訊。而地圖上的點擊事件處理是地圖功能中常用且重要的一環。本文將介紹如何使用JS和百度地圖API來實現地圖的點擊事件處理功能,並給出具體的程式碼範例。步驟:匯入百度地圖的API檔案首先,要在HTML檔案中匯入百度地圖API的文件,可以透過以下程式碼實現:

隨著網路金融的快速發展,股票投資已經成為了越來越多人的選擇。而在股票交易中,蠟燭圖是常用的技術分析方法,它能夠顯示股票價格的變動趨勢,幫助投資人做出更精準的決策。本文將透過介紹PHP和JS的開發技巧,帶領讀者了解如何繪製股票蠟燭圖,並提供具體的程式碼範例。一、了解股票蠟燭圖在介紹如何繪製股票蠟燭圖之前,我們首先需要先了解什麼是蠟燭圖。蠟燭圖是由日本人

js和vue的關係:1、JS作為Web開發基石;2、Vue.js作為前端框架的崛起;3、JS與Vue的互補關係;4、JS與Vue的實踐應用。

如何使用JS和百度地圖實現地圖多邊形繪製功能在現代網頁開發中,地圖應用程式已成為常見的功能之一。而地圖上繪製多邊形,可以幫助我們將特定區域標記,方便使用者進行檢視和分析。本文將介紹如何使用JS和百度地圖API實現地圖多邊形繪製功能,並提供具體的程式碼範例。首先,我們需要引入百度地圖API。可以利用以下程式碼在HTML檔案中導入百度地圖API的JavaScript

如何使用JS和百度地圖實現地圖添加自訂地點標記功能簡介:百度地圖是一款相當常用的地圖服務,它提供了豐富的地圖展示和互動功能,其中包括添加自訂地點標記。使用JS和百度地圖API,我們可以輕鬆實現在地圖上添加自訂地點標記的功能,以下是具體的程式碼範例:步驟一:準備工作首先,在你的HTML檔案中導入百度地圖的API文件,如下所示:<scripttype
