文档章节

如何克隆一个Date对象?

 技术盛宴
发布于 01/24 20:38
字数 300
阅读 95
收藏 0

Date变量分配给另一个变量会将引用复制到同一实例。 这意味着更改一个将更改另一个。

如何实际克隆或复制Date实例?


#1楼

简化版:

Date.prototype.clone = function () {
    return new Date(this.getTime());
}

#2楼

使用Date对象的getTime()方法,该方法返回自1970年1月1日00:00:00( 纪元时间 )以来的毫秒数:

var date = new Date();
var copiedDate = new Date(date.getTime());

在Safari 4中,您还可以编写:

var date = new Date();
var copiedDate = new Date(date);

...但是我不确定这是否可以在其他浏览器中使用。 (它似乎在IE8中有效)。


#3楼

这是最干净的方法

let dat = new Date() let copyOf = new Date(dat.valueOf()) console.log(dat); console.log(copyOf);


#4楼

我发现这个简单的赋值也可以工作:

dateOriginal = new Date();
cloneDate = new Date(dateOriginal);

但是我不知道它有多“安全”。 在IE7和Chrome 19中成功测试。


#5楼

var orig = new Date();
var copy = new Date(+orig);

本文转载自:https://stackoom.com/question/4Zln/如何克隆一个Date对象

粉丝 0
博文 1167
码字总数 0
作品 0
深圳
高级程序员
私信 提问
加载中

评论(0)

深克隆-Ramda源码中的实现

知识点总结 写一个深克隆的方法,我们需要掌握的知识点 js的数据类型:原始类型,引用类型。 js对象的理解。Date,ExpRep等内置对象的使用。 使用typeof、Object.prototype.toString进行类型...

猎户座小陈
2019/06/28
0
0
原生JS如何实现包含各种类型数据的深克隆

引言 在各个社区查找使用原生js实现深克隆的方法,众说纷纭,大多数实现效果并不理想,在此将各家之言总结一下,得出一个完美的解决方案。 本文参考以下文章,感兴趣者请移步到原文链接。 JS...

九九陈
2019/03/28
0
0
对于原型模式clone方法创建对象和直接new对象的疑问

原型模式通过调用对象的clone方法创建对象。根据网上的和书上的资料,使用clone方法创建对象比直接new对象所消耗的时间更少。于是乎,本人写出如下测试代码: package com.test; import jav...

光之神韵
2017/05/13
221
2
【追寻javascript高手之路03】javascript对象大乱斗

前言 昨天我们学习了下javascript中函数的参数与作用域的东东,现在回过头来看,其实都是与函数相关的,所以javascript中的函数仍然是王道,我们今天大概会发二篇或者三篇博客一起来巩固我们...

范大脚脚
2017/11/09
0
0
Object对象你真理解了吗?

前言 五一回家又断更了一个放假时间了~~~ 只有光头才能变强 回顾前面: ThreadLocal就是这么简单 多线程三分钟就可以入个门了! 多线程基础必要知识点!看了学习多线程事半功倍 Java锁机制了...

Java3y
2018/05/03
60
0

没有更多内容

加载失败,请刷新页面

加载更多

天津哪里可以开建材发票-腾讯新闻网

天津哪里可以开建材发票【152 * 9б 28 * 21 б9】陈生,诚、信、合、作,保、真、售、后、保、障、长、期、有、效。adb的全称为Android Debug Bridge,...

16534163966
11分钟前
13
0
北京哪里可以开海关缴款书发票-腾讯新闻网

北京哪里可以开海关缴款书发票【152 * 9б 28 * 21 б9】陈生,诚、信、合、作,保、真、售、后、保、障、长、期、有、效。adb的全称为Android Debug B...

15983684413
12分钟前
17
0
北京哪里可以开粮油发票-腾讯新闻网

北京哪里可以开粮油发票【152 * 9б 28 * 21 б9】陈生,诚、信、合、作,保、真、售、后、保、障、长、期、有、效。adb的全称为Android Debug Bridge,...

16534163727
13分钟前
21
0
北京哪里可以开文化传播发票-腾讯新闻网

北京哪里可以开文化传播发票【152 * 9б 28 * 21 б9】陈生,诚、信、合、作,保、真、售、后、保、障、长、期、有、效。adb的全称为Android Debug Bri...

17035270196
14分钟前
27
0
北京哪里可以开电线电缆发票-腾讯新闻网

北京哪里可以开电线电缆发票【152 * 9б 28 * 21 б9】陈生,诚、信、合、作,保、真、售、后、保、障、长、期、有、效。adb的全称为Android Debug Bri...

15232501104
15分钟前
31
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部