美文网首页
(一)操作符

(一)操作符

作者: 一只环环环 | 来源:发表于2017-01-24 16:51 被阅读19次

&& 与操作符 num1 && num2

  1. 当两个操作数为布尔值时,表达式的值:
  • falsefalse
  • 两个均为truetrue
  1. 当有一个值不为布尔值时
  • 当第一个操作数不是布尔值,但是其计算值为true(如一个对象,其使用Boolean() 计算后的值)时,返回第二个操作数
  • 当第一个操作数为false时,不会对第二个操作数进行计算(短路操作)
//如果$不存在,则把jQuery赋值给window.$;如果$存在,则不执行后面的表达式
$ === undefined && (window.$ =  jQuery);  
//相当于
($ === undefined) && (window.$ =  jQuery);  
  • 当其中一个值是 NaNNullUndifined时,则返回这三个值

|| 或操作符 num1 || num2

  1. &&一样,当两个操作数为布尔值时,表达式的值为
  • truetrue
  • 两个均为falsefalse
  1. 当有一个值不为布尔值时
  • 当第一位操作数的计算值为false时,返回第二个操作数 。一个广泛的应用:使用||操作符为变量设置默认值,当realValue为空或者undifined时,其计算值为false,所以a值为defaultValue

     var a = realValue || defaultValue
    
  • 当第一位为true时,不再计算第二个值,直接返回第一个值(短路操作)

  • 两个值均为对象时,返回第一个

  • 两个值均为NaNNullUndifined时,返回这三个值


! 非操作符 !num

  !false      //true
  !"string"   //false
  !0          //true
  !NaN        //true
  !""         //true
  !1234       //false

+、-、* 、/ 加减乘除

  • NaN进行计算时,所有值均为NaN
  • 若果有一个操作数不是数值,则使用其经Number()转换后的值进行计算
       Number('')          //0
       Number('string')    //NaN
       Number(true)        //1
       Number(false)       //0
       Number(null)        //0
       Number(undefined )  //NaN
       Number(NaN)         //NaN
    
  • +操作符
    • 如果两个操作数都是数值,则执行求和
    • 如果有一个是字符串,则执行字符串拼接
    • +是一个独立操作符,每一个+都是独立进行的,依次进行计算
    var num1 = 5;
    var num2 = 10;
    var msg1 = num1 + num2 +" is the sum";      //15 is the sum
    var msg2 = "the sum is "+ num1 + num2;      //the sum is 510
    var msg3 = "the sum is "+ (num1 + num2);    //the sum is 15
    

==、!=、===、!== 相等/不相等/全等/不全等

  • == 、!= 操作符会在进行比较前转换数据类型

null == undefined //true
"NaN" == NaN //false
5 == NaN //false
NaN == NaN //false NaN不等于自身
NaN != NaN //true

* === 、!== 全等、不全等操作符不会转换数据类型
```javascript
"55" == 55   //true
"55" === 55  //false

>、< 比较操作

  • 数值:比较大小
  • 字符串:按位比较字符在字符编码中的位置
  • 字符串与数值:转换为数值后进行比较
"a" < 3     //false "a" 转换为NaN 再与3进行比较,值为fasle
"23" < 3    //true 字符串"23"转换为数值23进行比较,值为fasle

相关文章

  • js运算符与表达式

    操作符 一元操作符:++,-- 算术操作符:+,-,*,/,% 关系操作符:>,<,>=,<= 相等操作符:==,...

  • 操作符和表达式

    操作符 一元操作符(++,--) 算术操作符(+,-,*,/,%) 关系操作符(>,<,>=,<=,) 相等操作符...

  • JavaScript高程读书笔记(2)

    五、操作符 算数操作符、位操作符、关系操作符、 相等操作符 一元操作符++和--:注意a+++,- 位操作符按位非...

  • 5. 从头学前端之操作符

    操作符包括算术操作符(如加号和减号)、位操作符、关系操作符和相等操作符。 一元操作符 只能操作一个值的操作符叫做一...

  • Rxjava2-二、操作符

    Rxjava记录总结操作符:创建操作符、转换操作符、合并操作符、过滤操作符、其他操作符、条件操作符. 创建操作符 ...

  • Kotlin 笔记(二)集合和函数操作符

    总数操作符 过滤操作符 映射操作符 元素操作符 生产操作符 顺序操作符

  • 走进RxJava源码(三) -- 创建型操作符

    创建型操作符 create操作符 just操作符 fromArray操作符 empty操作符 range 操作符

  • RxJava2操作符

    操作符分类 操作符分类有十三种: 变换操作符 过滤操作符列表 组合操作符 错误处理操作符 辅助操作符 条件操作符 ...

  • C语言运算符

    一.操作符 算数操作符C语言提供以下算数操作符  +    -    * /    % 除了%操作符,其...

  • Rxjava讲解(2)

    上面文章讲过创建操作符, 转换操作符,过滤操作符, 这篇文字介绍组合操作符,条件操作符,功能操作符。 组合操作符 ...

网友评论

      本文标题:(一)操作符

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