JavaScript 的运算符【四】(其他运算符)

  • A+

运算符是处理数据的基本方法,用来从现有的值得到新的值。JavaScript 提供了多种运算符,覆盖了所有主要的运算。

一.概述

二.void 运算符

  • void运算符的作用是执行一个表达式,然后不返回任何值,或者说返回undefined。

void运算符的主要用途。

  1. 替代undefined:由于undefined并不是一个关键字,其在IE8-浏览器中会被重写,在高版本函数作用域中也会被重写;所以可以用void(0) 来替换undefined。
    void (0) //undefined
    
  2. 客户端URL:这个运算符最常用在客户端URL——javascript:URL中,在URL中可以写带有副作用的表达式,而void则让浏览器不必显示这个表达式的计算结果。例如,经常在HTML代码中的<a>标签里使用void运算符。
    <a href="javascript:void window.open();">打开一个新窗口</a>
    
  3. 阻止默认事件:阻止默认事件的方式是给事件置返回值false。
    //一般写法
    <a href="http://example.com" onclick="fun();return false;">hehe</a>
      //使用void运算
    
    <a href="javascript:void(fun())">hehe</a>
    

三.逗号运算符

  • 逗号运算符用于对两个或者多个表达式求值,并返回后一个表达式的值。
  • 逗号运算符的一个用途是,在返回一个值之前,进行一些辅助操作。
    //一: 逗号表达式,返回最后一个值
    'a', 'b' // "b"
    'a', 'b',1+2// 3
    var x = 0;
    var y = (x++, 10);
    x // 1
    y // 10
    
    //二: 使用范例,辅助操作
    var value = (console.log('Hi!'), true);
    // Hi!
    value // true
    

四.圆括号的作用

  • 圆括号()作用,一种是把表达式放在圆括号之中,提升运算的优先级;
  • 另一种是跟在函数的后面,作用是调用函数
  • ()只能放置表达式
    //一:提高运行优先级
    (4 + 5) * 6 // 54
    
    //二:函数放在圆括号中,会返回函数本身。如果圆括号紧跟在函数的后面,就表示调用函数
    function f() {
      return 1;
    }
    
    (f) // function f(){return 1;}
    f() // 1
    
    //三:放置语句报错
    (var a = 1)
    // SyntaxError: Unexpected token var
    

五.左结合与右结合

  • 左结合:从左到右计算,大多数都是从左向右计算
  • 右结合:从右到左计算,常见的是 赋值运算符(=)和三元条件运算符(?:)`
    w = x = y = z;
    q = a ? b : c ? d : e ? f : g;
    //上面计算过程如下
    w = (x = (y = z));
    q = a ? b : (c ? d : (e ? f : g));
    
zhangfeng

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: