javascript对象删除元素

时间:2015-07-15 14:39:05

标签: javascript

我有一个关于删除对象属性的问题,例如:



<!DOCTYPE html>
<html lang="en">

<head>
  <meta charset="UTF-8">
  <title>test</title>
</head>

<body>
  <script type="text/javascript">
    var tmp = {
      x: 1,
      y: 2,
      z: 3
    };
    var tmp1 = {
      x: 1
    };


    for (pro in tmp) {
      console.log("get tmp <<" + pro + ">> property!!");

      if (!tmp1.hasOwnProperty(pro)) {
        console.log("we will delete <<" + pro + ">> property");
        delete tmp.pro; // or delete tmp[pro];
      }
    }

    console.log("--------------");
    for (p in tmp)
      console.log(p);
    console.log("--------------");

    for (p in tmp)
      document.write(p + "--" + tmp[p] + '<br>');
  </script>
</body>

</html>
&#13;
&#13;
&#13;

如果我使用删除tmp.pro 结果:x = 1 y = 2 z = 3(dosn&#39; t work !!),但是当我使用删除tmp时[pro] 结果是x = 1(删除没问题!!),为什么??

0 个答案:

没有答案