前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >js中多个Date对象变量间赋值互相影响

js中多个Date对象变量间赋值互相影响

作者头像
欢醉
发布2018-01-22 10:31:06
6.6K0
发布2018-01-22 10:31:06
举报
文章被收录于专栏:james大数据架构james大数据架构
代码语言:javascript
复制
<head>
    <title></title>
    <script type="text/javascript">
        function pageLoad() {
            var dtmNow = new Date();
            var dtmDt1 = dtmNow;
            dtmDt1.setMinutes(20);
            var divContent = document.getElementById("divContent");
            divContent.innerHTML = "dtmDt1:" + dtmDt1.toLocaleTimeString() + "dtmNow:" + dtmNow.toLocaleTimeString();
        }
    </script>
</head>
<body onload ="pageLoad()">
    <div id="divContent">
    
    </div>
</body>

  页面初始化时获得当前时间给变量dtmNow,然后dtmNow变量又赋给dtmDt1,给dtmDt1的分钟设置成20,再打印出两个变量,结果发现两个变量值相等,即dtmNow也发生了变化,本意是不想dtmNow随着变化,所以才定义了dtmDt1变量,但现在dtmNow也改变了这是为什么呢?

  dtmNow是Date类型,Date是对象是引用类型,dtmNow赋给了dtmDt1,引用类型间的拷贝是将变量指向同一个实例,那dtmDt1也就指向dtmNow所指向的实例,当改变其中一个的值时其实改变的是同一个实例,自然另一个变量也会随之改变,这与值类型不同。

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2012-10-11 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档