zoukankan      html  css  js  c++  java
  • js的delete和void关键字

     delete关键字

     
    • delete关键字的作用:
      • 删除对象的属性 语法:delete 对象.属性
      • 可以删除没有使用var关键字声明的全局变量(直接定义在window上面的属性)
    • delete关键字的使用注意:

      • 返回值类型为布尔值(true / false),删除成功返回true
      • 删除对象中不存在的属性,返回值是true
      • 删除对象的原型对象中的属性(不能删除),返回值是true
      • 无法删除使用var声明的全局的变量,但是却可以删除直接定义在window上面的属性
    • 示例:

       
    复制代码
     1 <script>
     2   var dog = {
     3       name:"招财",
     4       age:14
     5   }
     6   //删除对象的属性
     7   console.log(delete dog.name);  //true
     8   console.log(dog.name);         //undefined
     9 ​
    10   // 删除对象中不存在的属性
    11   console.log(delete dog.eat);  //true
    12 ​
    13   // 删除对象的原型对象中的属性
    14   Object.prototype.play =  "玩";
    15   console.log(delete Object.prototype.play );  //true
    16 ​
    17   //没有使用var关键字声明的变量,那么该变量默认会成为一个全局的变量(变成window的属性)
    18   b = "testb";
    19   console.log(b); // testb
    20 ​
    21   function func() {
    22       var num1 = 10;
    23       num2 = 20;
    24   }
    25 ​
    26   func();
    27   //console.log(num1);  // 报错 无法在函数体外部访问局部变量
    28   console.log(num2);    //20   num2 变成了window的属性
    29 ​
    30   //使用delete删除直接定义在window上面的属性
    31   console.log(delete num2);   // true
    32   //console.log(num2);        // 报错
    33 ​
    34   var a = "testa";
    35   delete a; // 无法删除
    36   console.log(a);   // testa
    37 ​
    38  </script>
    复制代码

    void关键字

    超级链接的形式:<a href="javascript:void(0)">超级链接的文字</a>
    其中,javascript:void(0)指的是该操作符指定要计算一个表达式但是不返回值。

    具体事例:

    <!DOCTYPE html>
    <html>
    <head>
    <meta charset="utf-8">
    <title></title>
    <script type="text/javascript">
    //新出现的type类型,不写也没有什么应用
    <!--
    //-->
    </script>
    </head>
    <body>

    <p>点击以下链接查看结果:</p>
    <a href="javascript:void(0)">点我!</a>

    </body>
    </html> 
    加上具体事件

    <a href="javascript:void(alert('Warning!!!'))">点我!</a>
    1
    加入了变量

    <!DOCTYPE html>
    <html>
    <head>
    <meta charset="utf-8">
    <title></title>
    <script type="text/javascript">
    function getValue(){
    var a,b,c;
    a = void ( b = 5, c = 7 );
    document.write('a = ' + a + ' b = ' + b +' c = ' + c );
    }
    </script>
    </head>
    <body>

    <p>点击以下按钮查看结果:</p>
    <form>
    <input type="button" value="点我" onclick="getValue();" />
    </form>

    </body>
    </html>


    结果:

    a = undefined b = 5 c = 7

  • 相关阅读:
    svnserve 配置
    JDBC与JTA的区别
    Redhat E5上安装Subversion 1.6详解
    CentOS5.3 编译 mod_jk 1.2.15 链接器 整合apache httpd 和 tomcat
    Linux对逻辑卷的创建与管理
    spring 包的解释
    vue.js之router详解(一)
    Ubuntu12.10 高速全自动配置bash脚本
    PHP execl导出/展示
    有关Linux下的一些配置
  • 原文地址:https://www.cnblogs.com/YuyuanNo1/p/9673303.html
Copyright © 2011-2022 走看看