JavaScript Date.toString()基数参数错误

为什么以下代码不会将我的日期输出到字符串!?

var d1 = Date.parse('10/29/1990 12:00:00 AM'); console.log(d1.toString('dd/MM/yyyy')); 

错误是:

未捕获的RangeError:toString()基数参数必须介于2和36之间

只是试图格式化日期……

因为d1不是Date对象 ,而是一个数字。 Date.parse返回毫秒表示,您需要将其提供给new Date或直接使用Date构造函数。

并且因为JavaScript没有本机日期格式化函数,所以只有依赖于实现的toStringtoLocalString以及标准化的toISOStringtoUTCString (虽然在旧IE中不受支持)。 相反,您必须通过获取单个组件并连接它们来手动进行格式化。 幸运的是, 有一堆图书馆可以帮助你。

JavaScript Date.prototype.toString方法不带参数(如格式等)。

https://developer.mozilla.org/en-US/docs/JavaScript/Reference/Global_Objects/Date/toString

使用Date.prototype.toLocaleDateString可能有所帮助: d1.toLocaleDateString('en')适用于我,但请查看所有精细打印:

https://developer.mozilla.org/en-US/docs/JavaScript/Reference/Global_Objects/Date/toLocaleString