神奇的运算符(运算符简写)

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了神奇的运算符(运算符简写)相关的知识,希望对你有一定的参考价值。

就来记录下运算符简写的一些技巧:

~按位取反

字符串查找:

  写JS的时候我们查找字符串时经常这么写判断字符串是否存在特定字符:

  if(str.indexOf(‘a‘)!= -1){

  }

  因为 ~-1=0,所以我们可以写成:

  if(~str.indexOf(‘a‘)){

  }

 

取整:

  向下取整一般情况下我们会这样子写:

  var n = 3.4;

  var m = Math.floor(n);

  但是我们还可以这样子写

  var n = 3.4;

  var m = ~~n;

 

&& 与 ||

  一起介绍一下它们:

  var result;

  if(status == 1){

    result = ‘aaa‘;

  }else if(status ==2){

    result = ‘bbb‘;

  }else{

    result = ‘ccc‘;

  }

  这种方式用的不能再多了,代码逻辑当然没问题,如果条件多了,我们还可以换成switch的方式,这应该是我们用最多的方式。但是我们这里思想下换成 && 与 || 更直观的方法:

  var result = (status == 1 && ‘aaa‘) || (status == 2 && ‘bbb‘) || ‘ccc‘;

 

其他好玩的运算符:

  刚刚说到正整数可以向下取整,其实除了这个方法,还有好多方法:

  var a = 3.4, b = 3.4, c = 3.4;

      a = a >> 0;

  b = b << 0;

  c = c | 0;

  说到这个,想到字符串转成数字的方法,我们一般都是:

  var a = ‘100‘;

  a = a - ‘0‘;

  或者这样:

  var a = ‘100‘;

  parseInt(a, 10);

  其实还可以更简单:

  + ‘100‘;

 

位运算符还有一些运算上的小技巧:

  num >> 1  // 取半,偶数

  num << 1  // 2倍

  num & 1 //  奇、偶判断   奇数返回 1, 偶数返回 0

 

以上是关于神奇的运算符(运算符简写)的主要内容,如果未能解决你的问题,请参考以下文章

常用eslint配置

垃圾回收器设计

神奇的位运算

JavaScript 基础知识汇总目录

简写赋值运算符,+=,真正的含义?

Eslint配置详解