• 中文
    • English
  • 注册
  • 查看作者
  • 浅析JavaScript中的操作符与表达式

    下面本篇文章给大家介绍一下JavaScript中的操作符与表达式,希望给大家有所帮助!

    1.表达式

    1.1原始表达式

    3.14  //数字直接量
    "hello world"  //字符串直接量
    /pattern/  //正则表达式直接量
    true  //返回一个布尔值: 真
    false  //返回一个布尔值: 假
    null  //返回一个值: 空
    this  //返回“当前”对象
    i  //返回变量i的值
    sum //返回sum的值
    undefined  //undefined是全局变量,和null不同,它不是一个关键字

    1.2表达式

    操作数以及操作符组合而成。

    1
    1 + 2
    (1 + 2) * 3
    (1 + 2 ) * 3 && !flag

    2.操作符

    • 算术运算符+, -, *, /, %, **): 普通的加、减、乘、除、取余运算,其中**次方运算符
     3 ** 2 // 结果为:9
    • 一元运算符++, --, +, -): 一些只需要一个操作数的运算符,注意++, --放在变量左右侧的差别,放在变量的左侧是先自增(减),再取值,放在右侧则相反。
    let a = 2, y, z;
    y = ++a // 先执行a = a + 1, 得到 a = 3, 然后将a赋值给y,则y = 3
    z = a++ // 接上面a = 3, 将a赋值给z,则z = 3,然后再执行 a = a + 1, 得到a = 4
    //一元证号(+)
    +3  //3
    +'3'  //3
    +true  //1
    +functioan(a){return a}  //NaN
    • 赋值运算符=, +=, -=, *=, /=, %=):将某个常量或变量或表达式的值赋值给另一个变量,注意:ES6新增的解构赋值
    //解构数组
    let [a, b, c] = ['one', 'two', 'three']  // a = 'one', b = 'two', c = 'three'
    //解构对象
    let { name, age } = { name: 'cc', age: 100 }  // name = 'cc', age = 100
    • 相等运算符==, !=, ===, !==):用于比较左右的操作数是否相等。可参考:JS比较运算符(“===”和“==”)的匹配规则以及if()条件的判断结果。
    • 关系运算符>, <, >=, <=): 用于比较操作符左右的操作数的大小。
    • 位操作符&, |, ~, ^, <<, >>, >>>): 将其操作数转化为二进制后,进行与、或、非、异或等操作运算,最终返回JS中的一个数值。其中>>>无符号右移
    • 逻辑运算符&&, ||, !): 主要通过与、或、非来判断一个表达式的值是否为true。注意:与和或操作具有短路计算效果。
    //短路计算
    false && (anything) // 结果为false
    true || (anything) // 结果为anything
    //方法1: 设置x的缺省值
    function test(x) {
    x = x || 100
    }
    test(10)  //x = 10
    test()  // x = 100
    // 方法2: ES6的方式
    function test(x = 100) {
    ...
    }
    test(10)  //x = 10
    test()  // x = 100
    • 条件运算符? :): JS中唯一一个有3个运算数的运算符,一般用于if语句的简短形式来使用。

  • 0
  • 0
  • 0
  • 1.1k
  • 请登录之后再进行评论

    登录
  • 任务
  • 实时动态
  • 发布
  • 单栏布局 侧栏位置: