>  기사  >  웹 프론트엔드  >  자바스크립트 연산자 사용 사례

자바스크립트 연산자 사용 사례

不言
不言원래의
2018-05-04 16:46:141089검색

이 글은 주로 자바스크립트 연산자(~, &, |, ^, 071af19a55f4da1989e8c02b755ba052>) 사용 사례를 소개합니다. 필요한 친구들은 참고하면 됩니다.

말도 안되는 소리는 그만하고 바로 코드로 가보세요.

코드 복사 코드는 다음과 같습니다.

<script type="text/javascript">
        //javascript操作符
        //1、按位非~
        var num1=25;//
        var num2=~num1;//
        alert(num2)
        var num3=10;
        var num4=~num3;
        alert(num4)
        var num5=99;
        var num6=~num5;
        alert(num6)
        //说明:相信大家也已经看出来了按位~(NOT)的实现原理:
        //以num1、num2为讲解对象
        //第一步:先把num1转换成二进制
        //第二步:取得num1二进制的反码赋值给num2
        //第三步:在把num2换算成十进制数字
        //简单说明:就是把操作数的数值的负数减1
        //2、按位与 &(AND)
        var result=25 & 3;
        alert(result);//1
        //说明,就是把两数转换成二进制数字,按照一定的规则:
        //第一个数值的位       第二个数值的位     结果
        //  1                       1           1
        //  1                       0           0
        //  0                       1           0
        //  0                       0           0
        //简而言之,按位操作符的相对应的位都是1时则返回1,任何一位是0则返回0.
        //然后在得到的二进制转换成十进制数字
      //  25=0000 0000 0000 0000 0000 0000 0001 1001
      //  3= 0000 0000 0000 0000 0000 0000 0000 0011
      //  ------------------------------------------
      // AND=0000 0000 0000 0000 0000 0000 0000 0001
        //3、按位或 |(OR)
        var result=25 | 3;
        alert(result);//27
        //说明,就是把两数转换成二进制数字,按照一定的规则:
        //第一个数值的位       第二个数值的位     结果
        //  1                       1           1
        //  1                       0           1
        //  0                       1           1
        //  0                       0           0
        //简而言之,按位操作符的相对应的位有一位是1就返回1,而只有在两个位都是0的情况下才返回0.
        //然后在得到的二进制转换成十进制数字
        //  25=0000 0000 0000 0000 0000 0000 0001 1001
        //  3= 0000 0000 0000 0000 0000 0000 0000 0011
        //  ------------------------------------------
        //  OR=0000 0000 0000 0000 0000 0000 0001 1011
        //4、按位异或 ^(XOR)
        var result= 25 ^ 3;
        alert(result);//26
        //说明,就是把两数转换成二进制数字,按照一定的规则:
        //第一个数值的位       第二个数值的位     结果
        //  1                       1           0
        //  1                       0           1
        //  0                       1           1
        //  0                       0           0
        //简而言之,这个操作符(^)在两个数值对应位上只有一个1时才返回1,否则返回0.
        //然后在得到的二进制转换成十进制数字
        //  25=0000 0000 0000 0000 0000 0000 0001 1001
        //  3= 0000 0000 0000 0000 0000 0000 0000 0011
        //  ------------------------------------------
        // XOR=0000 0000 0000 0000 0000 0000 0001 1010
        //5、左移(<<)
        var oldNum=2;
        var newNum=oldNum << 5;
        alert(newNum)
        //说明,将2(二进制数码10)向左移5位结果就是1000000(二进制)等于64
        //注意,左移不会影响操作符的符号位,例如将-2左移5位就是-64
        //2=0000 0000 0000 0000 0000 0000 0000 0010
       //64=0000 0000 0000 0000 0000 0000 010 00000
        //6、有符号右移(>>)
        var oldNum=64;
        var newNum=oldNum >> 5;
       //64=0000 0000 0000 0000 0000 0000 010 00000
        //2=0000 0000 0000 0000 0000 0000 0000 0010
        alert(newNum)
    </script>

관련 추천:

JS 연산자 "!~" 자세한 설명

위 내용은 자바스크립트 연산자 사용 사례의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.