この記事では、javascript に関する関連知識を提供します。主に、Date オブジェクトの作成、Date オブジェクトのメソッドなど、Date オブジェクト Date に関連する問題を次のように整理しています。 , 皆様のお役に立てれば幸いです。
[関連する推奨事項: JavaScript ビデオ チュートリアル 、Web フロントエンド ]
日付と時刻は次のとおりです。プログラミング プロセス 幸いなことに、JavaScript
は組み込みオブジェクト Date (日付) を用意してくれました。このオブジェクトを通じて、作成、保存、変更、時間の測定、印刷、その他の基本的な操作を行うことができます。これは、すべての JavaScript
プログラマーにとって必須のコースの 1 つです。
Date オブジェクトの作成
通常のオブジェクトと同様に、new Date()
を使用して Date
オブジェクトを作成できます。作成時にいくつかの初期化パラメータを渡します。
#new Date()
パラメータなしの作成ケース:let now = new Date()console.log(now)コードの実行結果は次のとおりです:
19:25 と 24 秒です。
ミリ秒パラメータを使用して日付オブジェクトを作成します。
ミリ秒は、1970 年 1 月 1 日からの時間を指します。 UTC 0 からのミリ秒単位 (1 ミリ秒 = 1/1000 秒)。 <pre class="brush:php;toolbar:false">//创建一个时间,举例1970.1.1时间点0毫秒
let jan01_1970 = new Date(0)
console.log(jan01_1970)
//创建一个时间,比1970年1.1时间点晚3天(3天*24小时*3600秒*1000毫秒)
let jan04_1970 = new Date(3 * 24 * 3600 * 1000)
console.log(jan04_1970)</pre>
コード実行結果:
は、1970 年 1 月 1 日の 00:00:00 からの経過時間です。ミリ秒数、つまり timestamp
。 タイムスタンプは日付を単純にデジタル表現したもので、通常は
を使用して日付を作成します。すでに日付 Date
オブジェクトがある場合は、date.getTime()
を使用して、日付に対応するタイムスタンプを取得できます。 #注:
中国はゾーン 8 に位置しているため、上記の例の時刻は 00:00:00 ではなく、08:00:00タイムスタンプは整数だけでなく、負の数値も指定できます。例:1970 年より前ですか?
//1969-12-31 00:00:00let dec31_1969 = new Date(-24 * 3600 * 1000)console.log(dec31_1969)
コード実行結果:
new Date(date_str )
let date = new Date('2022-06-22 00:00:00')console.log(date)コード実行結果:
new Date(年、月、日、時、分、秒、ミリ秒)
- ——4 桁の数字である必要があります;
-
month
—— - [0,11]
、
0は 1 月を意味します;
date—毎月の特定の日、デフォルトは
1 ; -
時間/分/秒/ミリ秒
——デフォルトは 0; -
例:
let date = new Date(2022,6,22,20,35,33)console.log(date)コード実行結果:
ミリ秒数も指定できます:
let date = new Date(2022,6,22,20,35,33,777)console.log(date)
Date オブジェクトのメソッド
##Date オブジェクトがある場合、
Date オブジェクトの組み込みメソッドを通じて、年、月、日付などの時刻の一部を取得できます。 日付コンテンツの取得
たとえば、datedate:
let date = new Date(2022,5,22,20,35,33)
getFull Year() があります。
- date.getFull Year()
- Return
2022
;getMonth()
月を取得、 date .getMonth( ) -
6
月である5
を返します;getDate()
現在の月の日付を取得します。 date.getDate () - Return
22
;getDay()
現在の時刻が何曜日であるかを取得します。 date.getDay() - return
3
;注:
- 以上日期都是已于当地日期的,比如我这里是中国的时区
- 获取年份一定要用
getFullYear
,getYear
会返回两位数的年份
我们也可以获得0
时区的时间,也就是UTC
时间,分别对应getUTCFullYear()
、getUTCMonth()
,getUTCDay
等。只需要在get
后插入UTC
即可。
举个例子:
let date = new Date(2022,5,22,20,35,33)console.log(date.getHours(),date.getUTCHours())
代码执行结果:
夜里也可以看出,中国时区和0
时区相差8
小时。
-
getTime()
返回日期的时间戳,方法没有UTC
模式; -
getTimezoneOffset()
返回本地时区和0
时区相差的时间,以分钟为单位,并且没有UTC
模式;
设置日期内容
我们还可以通过Date
对象的方法设置日期中的某一部分:
-
setFullYear(year, [month], [date])
设置年份(月份、日) -
setMonth(month, [date])
设置月份(日) -
setDate(date)
设置日期(月份的第几天) -
setHours(hour, [min], [sec], [ms])
设置小时(分、秒、毫秒) -
setMinutes(min, [sec], [ms])
设置分钟(秒、毫秒) -
setSeconds(sec, [ms])
设置秒(毫秒) -
setMilliseconds(ms)
设置毫秒 -
setTime(milliseconds)
(使用自1970-01-01 00:00:00 UTC+0
以来的毫秒数来设置整个日期)
以上函数中只有setTime()
没有UTC
变体。
日期的自动校准
JavaScript
的Date
具备自动校准功能,这为我们针对时间的计算提供了极大的方便。
例如:
let date = new Date(2022,5,38)//注意这里的38console.log(date)
代码的执行结果:
从执行结果我们可以看出"2022年6月38号"并没有使程序出现错误,而是将日期转成了”2022年7月8号“。
以上案例验证了,在JavaScript
中,超出范围的日期会被Date
对象自动分配。这样我们就可以非常方便的使用Date
对象进行日期的计算。
例如,我们可以在日期上对年、月、日进行加减法运算:
let date = new Date(2022,5,23)//当前时间是2022-6-23date.setDate(date.getDate() + 8)//计算八天后的时间console.log(date)
代码执行结果:
同样的,我们也可以使用date.setSeconds()
方法已秒为单位计算日期。
日期转为数字、日期差值
日期Date
转为数字的结果和使用date.getTime()
的返回值相同,都是毫秒为单位的数值:
let date = new Date()console.log(+date)
代码执行结果:
既然时间的本质就是数字,我们也可以进行时间差计算,并且以ms
(毫秒)为单位。
例如:
let date1 = new Date(2022,5,23)let date2 = new Date(2022,5,24)console.log(`时间差为${date2-date1}ms`)
代码执行结果为:
Date.now()
如果我们希望获得当前时间,更优的做法是使用Date.now()
方法。这个方法会返回当前时间的时间戳,同时不需要创建额外的Date
对象,这对内存开销、垃圾回收都是有好处的,而且代码更简洁。
举个栗子:
let begin = Date.now()for(let i = 1;i<p>代码执行结果:</p><p><img src="/static/imghwm/default1.png" data-src="https://img.php.cn/upload/article/000/000/067/2e91502ffdbd23d1af26c248feabbead-11.png?x-oss-process=image/resize,p_40" class="lazy" alt="JavaScript 日付オブジェクト Date (概要共有)"></p><h3 id="Date-parse">Date.parse()</h3><p><code>Date.parse()</code>方法可以读取一个日期字符串,并转为时间戳,但是字符串必须遵守一定的规则:<code>YYYY-MM-DDTHH:mm:ss.sssZ</code>。</p>
-
YYYY-MM-DD
对应年-月-日
-
T
属于分隔符 -
HH:mm:ss.sss
对应时:分:秒.毫秒
-
Z
可以是+-hh:mm
格式的时区。单个字符Z
表示UTC+0
字符串可以使用省略写法,例如:YYYY-MM-DD
、YYYY-MM
、YYYY
。
举个小李子:
let ms = Date.parse('2022-06-23T19:38:30.777+08:00')//时间戳let date = new Date(ms)console.log(date)
代码执行结果:
概要
-
JavaScript
Date
オブジェクトを使用して時間を処理します:new Date()
; - 0 からの月の計算
-
Date
には多くの実用的なメソッドがあり、特定の期間を取得できます; -
Date
オブジェクトは自動的に調整されます。日付を直接加算および減算できます。 -
Date.now()
は現在時刻を効率的に取得できます。
[関連する推奨事項: JavaScript ビデオチュートリアル、Web フロントエンド]
以上がJavaScript 日付オブジェクト Date (概要共有)の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

Web開発におけるJavaScriptの主な用途には、クライアントの相互作用、フォーム検証、非同期通信が含まれます。 1)DOM操作による動的なコンテンツの更新とユーザーインタラクション。 2)ユーザーエクスペリエンスを改善するためにデータを提出する前に、クライアントの検証が実行されます。 3)サーバーとのリフレッシュレス通信は、AJAXテクノロジーを通じて達成されます。

JavaScriptエンジンが内部的にどのように機能するかを理解することは、開発者にとってより効率的なコードの作成とパフォーマンスのボトルネックと最適化戦略の理解に役立つためです。 1)エンジンのワークフローには、3つの段階が含まれます。解析、コンパイル、実行。 2)実行プロセス中、エンジンはインラインキャッシュや非表示クラスなどの動的最適化を実行します。 3)ベストプラクティスには、グローバル変数の避け、ループの最適化、constとletsの使用、閉鎖の過度の使用の回避が含まれます。

Pythonは、スムーズな学習曲線と簡潔な構文を備えた初心者により適しています。 JavaScriptは、急な学習曲線と柔軟な構文を備えたフロントエンド開発に適しています。 1。Python構文は直感的で、データサイエンスやバックエンド開発に適しています。 2。JavaScriptは柔軟で、フロントエンドおよびサーバー側のプログラミングで広く使用されています。

PythonとJavaScriptには、コミュニティ、ライブラリ、リソースの観点から、独自の利点と短所があります。 1)Pythonコミュニティはフレンドリーで初心者に適していますが、フロントエンドの開発リソースはJavaScriptほど豊富ではありません。 2)Pythonはデータサイエンスおよび機械学習ライブラリで強力ですが、JavaScriptはフロントエンド開発ライブラリとフレームワークで優れています。 3)どちらも豊富な学習リソースを持っていますが、Pythonは公式文書から始めるのに適していますが、JavaScriptはMDNWebDocsにより優れています。選択は、プロジェクトのニーズと個人的な関心に基づいている必要があります。

C/CからJavaScriptへのシフトには、動的なタイピング、ゴミ収集、非同期プログラミングへの適応が必要です。 1)C/Cは、手動メモリ管理を必要とする静的に型付けられた言語であり、JavaScriptは動的に型付けされ、ごみ収集が自動的に処理されます。 2)C/Cはマシンコードにコンパイルする必要がありますが、JavaScriptは解釈言語です。 3)JavaScriptは、閉鎖、プロトタイプチェーン、約束などの概念を導入します。これにより、柔軟性と非同期プログラミング機能が向上します。

さまざまなJavaScriptエンジンは、各エンジンの実装原則と最適化戦略が異なるため、JavaScriptコードを解析および実行するときに異なる効果をもたらします。 1。語彙分析:ソースコードを語彙ユニットに変換します。 2。文法分析:抽象的な構文ツリーを生成します。 3。最適化とコンパイル:JITコンパイラを介してマシンコードを生成します。 4。実行:マシンコードを実行します。 V8エンジンはインスタントコンピレーションと非表示クラスを通じて最適化され、Spidermonkeyはタイプ推論システムを使用して、同じコードで異なるパフォーマンスパフォーマンスをもたらします。

現実世界におけるJavaScriptのアプリケーションには、サーバー側のプログラミング、モバイルアプリケーション開発、モノのインターネット制御が含まれます。 2。モバイルアプリケーションの開発は、ReactNativeを通じて実行され、クロスプラットフォームの展開をサポートします。 3.ハードウェアの相互作用に適したJohnny-Fiveライブラリを介したIoTデバイス制御に使用されます。

私はあなたの日常的な技術ツールを使用して機能的なマルチテナントSaaSアプリケーション(EDTECHアプリ)を作成しましたが、あなたは同じことをすることができます。 まず、マルチテナントSaaSアプリケーションとは何ですか? マルチテナントSaaSアプリケーションを使用すると、Singの複数の顧客にサービスを提供できます


ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

VSCode Windows 64 ビットのダウンロード
Microsoft によって発売された無料で強力な IDE エディター

MantisBT
Mantis は、製品の欠陥追跡を支援するために設計された、導入が簡単な Web ベースの欠陥追跡ツールです。 PHP、MySQL、Web サーバーが必要です。デモおよびホスティング サービスをチェックしてください。

ZendStudio 13.5.1 Mac
強力な PHP 統合開発環境

Dreamweaver Mac版
ビジュアル Web 開発ツール

MinGW - Minimalist GNU for Windows
このプロジェクトは osdn.net/projects/mingw に移行中です。引き続きそこでフォローしていただけます。 MinGW: GNU Compiler Collection (GCC) のネイティブ Windows ポートであり、ネイティブ Windows アプリケーションを構築するための自由に配布可能なインポート ライブラリとヘッダー ファイルであり、C99 機能をサポートする MSVC ランタイムの拡張機能が含まれています。すべての MinGW ソフトウェアは 64 ビット Windows プラットフォームで実行できます。
