为什么在javascript中删除对象不起作用

时间:2012-10-01 09:58:54

标签: javascript html

  

可能重复:
  Deleting Objects in JavaScript

我已经开始使用delete属性了。它不起作用。我不知道它是否是浏览器兼容性问题?是不是删除了引用?

关于指针的概念并不清楚。请告诉我们哪里出错?

代码:

    <html>
        <script language="JavaScript">
        MyDate = new Date();
        document.write("MyDate=",MyDate,"<br>");

        delete MyDate;
        document.write("MyDate=",MyDate);   //MyDate=undefined should be output
        </script>
    </html>

输出只是第一个document.write:

MyDate=Mon Oct 01 2012 15:27:56 GMT+0530 (India Standard Time)

3 个答案:

答案 0 :(得分:1)

IIRC,javascript中的delete删除属性。

答案 1 :(得分:1)

它正在发挥作用。由于您要删除myDate,因此当您尝试在第二个myDate jsfiddle

中访问document.write时,浏览器会抛出异常
Uncaught ReferenceError: MyDate is not defined 

答案 2 :(得分:1)

首先,这不是应该如何使用删除。您可以使用它来删除对象的属性,因此在您的情况下,您应该编写delete window.MyDate

为什么要undefined?你删除变量,因此你得到

  

错误:ReferenceError:未定义MyDate