给另一个Date变量赋值会将引用复制到相同的实例。这意味着改变一个会改变另一个。
我如何实际克隆或复制一个日期实例?
给另一个Date变量赋值会将引用复制到相同的实例。这意味着改变一个会改变另一个。
我如何实际克隆或复制一个日期实例?
当前回答
我发现这个简单的作业也可以:
dateOriginal = new Date();
cloneDate = new Date(dateOriginal);
但我不知道它有多“安全”。已在IE7和Chrome 19中成功测试。
其他回答
我发现这个简单的作业也可以:
dateOriginal = new Date();
cloneDate = new Date(dateOriginal);
但我不知道它有多“安全”。已在IE7和Chrome 19中成功测试。
简化版:
Date.prototype.clone = function () {
return new Date(this.getTime());
}
这是最干净的方法
let date = new date () let copyOfDate = new Date(Date . valueof ()) console.log(日期); console.log (copyOfDate);
var orig = new Date(); var copy = new Date(+ origin); console.log(源自,复制);
使用Date对象的getTime()方法,该方法返回自1970年1月1日00:00:00 UTC (epoch time)以来的毫秒数:
var date = new Date();
var copiedDate = new Date(date.getTime());
在Safari 4中,你还可以这样写:
var date = new Date();
var copiedDate = new Date(date);
...但我不确定这是否适用于其他浏览器。(它似乎在IE8中工作)。