JS中的运算-超基础-运算符的优先级

    技术2023-08-10  88

    算数运算符也叫操作符,通过运算符可以对一个或多个值进行运算,并获取结果。

    +运算符
    Number和其他类型,当对不是Number的变量运算时,会先转换为Number再运算;数字加NaN,会返回一个NaN两个字符串可以相加,进行字符串的拼接,任意数据类型加上字符串都会转换为字符串

    一元运算

    只需要一个操作数:+ - a = +a a = -a [ a = true; b = -a; ----- b = -1] 先转换为number,在进行运算

    自增自减(自减同理) a++和++a 源变量会立马自增1 b1 = a++:a++的值等于a自增前的值 1 b2 = ++a:++a的值等于源变量自增后的值 2

    逻辑运算

    非布尔值先转换为布尔值,在进行逻辑运算。

    !非运算 取反&& 与 只要一个为假结果就是假 JS中的 “ ” 属于短路的与,因此在运算时,不会检查第二个值,如果第一个为false,直接返回false|| 或 只要一个为真,结果就为真 JS中的 “ ” 属于短路的或,如果第一个为false,则会检查第二个

    赋值运算

    直接赋值 += 不可分开写,左边加上右边,再将结果赋值给左边-= 左边减去右边,再将结果赋值给左边*= 、 /= 、 %=

    关系运算符

    /> / <可以比较两个运算符之间的大小关系。关系成立返回true,反之为false。/<= / <= 对于非数字比较,先进行数字的转换,再进行比较,例如 2> true — true== 相等关系,成立返回true,反之false 如果类型不行等,类型转换后相等那么也会返回true。!= 不等关系 注意:NaN == NaN 将返回false NaN和所有值的都不想等,包括他自己,可以通过isNaN()函数来检查一个值是不是NaN。=== 全等关系 如果类型不同,则返回false!== 不全等,值相等,类型不等,也会返回true

    条件运算

    三元运算:条件语句 ? 语句1: 语句2;

    运算符的优先级

    . ,[] , new()++,–!,~,+(单目),-%,*,/+,-<< ,>>,>>><,<=,>,>=&^|&&||?:=,+=,-=,*=,/=,%=,<<=,>>=,>>>=,&=,^=,|=,
    Processed: 0.009, SQL: 9