1. ホーム
  2. javascript

[解決済み] Chrome Dev Toolで日付の__proto__がInvalid Dateと表示されるのはなぜですか?

2023-04-01 01:26:48

質問

私は知っています。 __proto__ が非推奨 (あるいは標準の一部ではない) であることなどは知っていますが、それでも、私が __proto__ の値を見ると、Invalid Date と表示されるのはどういう意味なのでしょうか。

var myDate = new Date(1331869050000);

どのように解決するのですか?

<ブロッククオート

"やはりInvalid Date"と表示されるのはどういう意味なのか気になります。

それは単に toString の値です。 prototype オブジェクトの Date コンストラクタ関数のオブジェクトを返します。


Date.prototype.toString(); // "Invalid Date"


お好みで上書きしてください...

Date.prototype.toString = function() { return "I like turtles." };

var myDate = new Date(1331869050000);
myDate.__proto__; // I like turtles.


少し話がそれますが __proto__ は ECMAScript の次のバージョン、コードネーム Harmony の現在の作業草案にあります。

http://wiki.ecmascript.org/doku.php?id=harmony:specification_drafts

<ブロッククオート
  • B.3.1節を追加し、以下を指定できるようにしました。 __proto__ 機能を追加しました。