搜索

首页  >  问答  >  正文

javascript - JS 里面的 delete object.key 到底删除了什么?

delete 删除的是什么?

为什么我这里是先打印的,后删除的,结果打印出来却是已经被删除此属性的对象,求解啊,各位小哥哥们~~

var a = {love: 12, height: 10}
console.log(a) // 结果是 a = {height: 10}   为什么啊~~~
delete a.love;

明明是先打印的,后删除的,好奇怪啊

世界只因有你世界只因有你2710 天前978

全部回复(3)我来回复

  • 怪我咯

    怪我咯2017-06-28 09:30:09

    你注意下,它不展开的时候是{love: 12, height: 10},展开了以后才少了,因为这个点开时展示的是当时的引用,最简答的理解方式,你在console后面加一个debugger

    回复
    0
  • 習慣沉默

    習慣沉默2017-06-28 09:30:09


    点击箭头查看详情的时候,会重新求值。

    回复
    0
  • 黄舟

    黄舟2017-06-28 09:30:09

    对象是引用类型的值,你console.log()输出的是它的信息没错,但是当delete以后,a在堆里面的值已经发生变化,当你点开以后实际上显示的是堆里面实际的值。

    回复
    0
  • 取消回复