JavaScript 日付処理におけるプラス記号の謎
JavaScript では、プラス記号 ( ) は他の演算子と組み合わせてよく使用されます。さまざまな操作を実行します。ただし、新しい Date 式との併用は特に混乱を招く可能性があります。
次のコード スニペットを考えてみましょう:
<code class="javascript">function fn() { return +new Date; }</code>
このコンテキストでプラス記号は何をするのでしょうか?日付オブジェクトではなくタイムスタンプを返すのはなぜですか?
単項演算子: 数値への変換
ここでのプラス記号は単項演算子として機能します。新しい Date 式の結果を数値に変換します。 Date オブジェクトは日付と時刻を表し、単項プラス演算子はこのオブジェクトの valueOf メソッドを暗黙的に呼び出して、Unix エポック (1970 年 1 月 1 日 00:00:00 UTC) からのミリ秒数を表す数値タイムスタンプを取得します。
同等のコード
上記のコード スニペットは、次のより明示的な式と同等です。
<code class="javascript">function() { return Number(new Date); }</code>
Number 関数は、Date オブジェクトを明示的に次のように変換します。数値。単項プラス演算子と同じ結果が得られます。
結論
新しい Date 式のプラス記号は、Date オブジェクトを強制する単項演算子です。数値のタイムスタンプに変換します。これは、単項演算子に関する Mozilla Developer Network (MDN) リファレンス (https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/Unary_plus) に文書化されており、有名な XKCD コミックでも図解されています。単項加算 (https://xkr.us/articles/javascript/unary-add).
以上がJavaScript の日付処理におけるプラス記号の目的は何ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。