zoukankan      html  css  js  c++  java
  • delete和void是javascirpt中的一元运算符

    1 delete

    delete 运算符删除对以前定义的(自己定义的)对象属性或方法的引用。不能删除原始的 ECMAScript 方法,不是开发者定义的。

    //可以删除的例子
    var o = new Object;
    o.name = "David";
    alert(o.name);    //输出 "David"
    delete o.name;
    alert(o.name);    //输出 "undefined"

    delete 运算符不能删除开发者未定义的属性和方法。下面的代码将引发错误:

    //不能删除原生的ECMAScript方法
    delete o.toString;

    2 void

    使函数没有返回值(请记住,没有返回值的函数真正返回的都是 undefined。)

    该运算符通常用于避免输出不应该输出的值,例如,从 HTML 的 <a> 元素调用 JavaScript 函数时。要正确做到这一点,函数不能返回有效值,否则浏览器将清空页面,只显示函数的结果。例如:

    <a href="javascript:window.open('about:blank')">Click me</a>

    如果把这行代码放入 HTML 页面,点击其中的链接,即可看到屏幕上显示 "[object]"。

    这是因为 window.open() 方法返回了新打开的窗口的引用。然后该对象将被转换成要显示的字符串。

    要避免这种效果,可以用 void 运算符调用 window.open() 函数:

    <a href="javascript:void(window.open('about:blank'))">Click me</a>
  • 相关阅读:
    review37
    review36
    review35
    linux 下 安装mysql
    安装yum
    hadoop mapreduce 计算平均气温的代码,绝对原创
    hadoop mapreduce 计算平均气温的代码,绝对原创
    Mysql命令大全
    Mysql命令大全
    约瑟夫问题
  • 原文地址:https://www.cnblogs.com/wu-hou/p/6370688.html
Copyright © 2011-2022 走看看