美文网首页web前端之路
JavaScript操作符与表达式

JavaScript操作符与表达式

作者: 疯也是一种态度_ | 来源:发表于2019-09-27 12:28 被阅读0次

    表达式

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

    操作符

    1.算术运算符

    (+, -, *, /, %, **): 普通的加、减、乘、除、取余运算,其中**为次方运算符。
    

    2.一元运算符

    (++, --, +, -):一些只需要一个操作数的运算符,注意:++, --放在变量左右侧的差别,放在变量的左侧是先自增(减),再取值,放在右侧则相反。
    

    ++是递增操作符,--是递减操作符
    i++ 先赋值 后自加
    i-- 先赋值 后自减

    --i 先自减 再赋值
    ++i 先自加 再赋值

    3.赋值运算符

    (=, +=, -=, *=, /=, %=(取余)):将某个常量或变量或表达式的值赋值给另一个变量,注意:ES6新增的解构赋值。
    

    乘法/赋值(*=)
    除法/赋值(/=)
    取于/赋值(%=)
    加法/赋值(+=)
    减法/赋值(-=)
    左移/赋值(<<=)
    有符号右移/赋值(>>=)
    无符号右移/赋值(>>>=)

    4.相等运算符

    (==, !=, ===, !==):用于比较左右的操作数是否相等。
    
    相等和不相等 == / !=
    这两个操作符都会先转换操作数(通常称为 强制转型),然后再比较它们的相等性
    全等和不全等 === / !==
    除了在比较之前不转换操作数之外,全等和不全等操作符 与 相等和不相等操作符没什么区别
    console.log("55" == 55);
    输出:true      //因为转换后相等
    console.log("55" === 55);
    输出: false     //因为不同的数据类型不相等
    
    console.log(undefined == null);
    输出:true
    console.log(undefined === null); 
    输出: false
    

    5.关系运算符

    (>, <, >=, <=): 用于比较操作符左右的操作数的大小。
    

    6.位操作符

    (&, |, ~, ^, <<, >>, >>>): 将其操作数转化为二进制后,进行与、或、非、异或等操作运算,最终返回JS中的一个数值。其中>>>为无符号右移。
    

    按位非(NOT): 按位非操作符由一个波浪线(~)表示,执行按位非的结果就是返回数值的反码。
    按位与(AND): 按位与操作符由一个和号字符( & )表示
    按位或(OR): 按位或操作符由一个竖线符号(|)表示
    按位异或(XOR): 按位异或操作符由一个插入符号(^)表示
    左移 : 左移操作符由两个小于号(<<)表示,这个操作符会将数值的所有位向左移动指定的位数。
    有符号的右移:该操作符由两个大于号(>>)表示,这个操作符会将数值向右移动
    无符号右移 : 该操作符由 3 个大于号(>>>)表示

    7.逻辑运算符

    (&&, ||, !): 主要通过与、或、非来判断一个表达式的值是否为true。注意:与和或操作具有短路计算效果。&&(与)  :找第一个为false的值并返回
    

    &&(与) :找第一个为false的值并返回
    返回只有两种结果 true false
    只要有一个条件不成立,返回false

    ||(或):找第一个为true的值并返回
    返回只有两种结果 true false
    只要有一个条件成立,返回true

    ! (非)
    说明:
    1)、无论操作数是什么数据类型,逻辑非都会返回一个布尔值
    2)、逻辑非操作符首先会将它的操作数转换为一个布尔值,然后再 对其求反。
    3)、同时使用两个逻辑非操作符时,第一个逻辑非操作会基于无论什么操作数返回一个布尔值

    相关文章

      网友评论

        本文标题:JavaScript操作符与表达式

        本文链接:https://www.haomeiwen.com/subject/wptfyctx.html