据说不了解这些运算符概念会直接影响开发

282 阅读2分钟

运算符一些基本的概念,如果我们不太清楚会直接影响后期的开发速度,以及工作后和同事吹水的水平,同时一块在面试题中出现的频率也是非常高的。所以对于运算符的一些基本概念还是有必要去掌握的。

什么是操作符?什么是操作数?

操作符:也称运算符,参与运算的符号。

操作数:参与预算的数据,也称作“元”。

操作符不一定只有一个符号。

例:

1 + 1 * 2 // 可能有多个操作符

操作符出现在不同的位置可能代表不同的含义

例:

3 - 2; // 代表减法运算
-1.2; // 代表负

前面几个章节所用到的操作符:

  1. =:赋值符号,将右边的数据赋值给左边
  2. .:访问符号,用于访问对象的属性
  3. []:访问符号,用于访问对象的属性
  4. ():函数调用

操作符分类有哪几种

  • 按操作数数量区别
  1. 一元(目)运算符:() . []
  2. 二元(目)运算符: + - / * % =
  3. 三元(目)运算符: ?:
  • 按功能区分
  1. 算术运算符(数学)
  2. 比较运算符
  3. 逻辑运算符
  4. 位运算符
  5. 其他

什么的表达式

表达式是值、变量和运算符的组合,计算结果是值。

表达式 = 操作符 + 操作数 (表达式是有操作符和操作数共同组成的)

// console(对象 操作数).(操作符)log(函数 操作数)() (操作符)

每个表达式都有一个运算结果,该结果叫做返回值,返回值的类型叫做返回类型

所有的表达式都可以当作数据使用。表达式可以出现在任何出现数据的地方。

例:

        var obj = {
            a: 3
        };
        console.log(obj["a"] * obj.a);

前面几个章节所用到的运算符的返回值和类型

  1. =:该表达式,返回赋值的结果

例1:

        var a;
        console.log(a = 1); // 打印1。返回是 a = 1这个表达式的结果

例2:

        var a, b, c, d;
        a = b = c = d = 1;
        console.log(a, b, c, d);
        /* 
            d:1
            c:1
            b:1
            a:1
         */
  1. .:属性访问表达式,返回的是属性的值
  2. []:属性访问表达式,返回的是属性的值
  3. ():函数调用表达式,返回的结果取决于函数的运行
  4. 如果是一个声明+赋值的表达式,返回结果为undefined。

Initial value of the variable. It can be any legal expression. Default value is undefined.

console.log函数调用的返回结果为undefined

控制台中需要了解的内容

  • chrome浏览器控制台的环境是REPL环境
  • REPL:Read Eval Print Loop,读-执行-打印-循环
  • 当直接在控制台书写代码时,除了运行代码之外,还会输出该表达式的返回值

本文使用 mdnice 排版