js语言的位运算符(其他语言也通用)

我与影子孤独终老i 提交于 2019-12-02 14:43:58

一.左移运算符(<<)

1.1 该运算符有2 个运算数,        a<<b,         将a左移相当于a左移2 的b次方,        2个运算符要求是整数,或可以转换成整数的.

eg:     

           2<<2=8

          5<<2=20

         "1"<<2=4

二.右移运算符(>>)

1.1  该预算符有2个运算数,    a>>b ,    将a右移b位,      相当于,    Math.floor(a/2的b次方)      Math.floor向下取整

eg:

         8>>2=2

         -7>>1=4

注意点ONE:      当运算符  a  无法转换成整数时,运算结果为0

eg:

        NAN<<2=0

        {}<<2=0

        NAN>>2=0

注意点TWO:     当运算符  b  无法转换成整数时,运算结果为a

 eg:      

        2<<NAN=2

        8<<{}=8

        1>>NAN=2

注意点THREE:    当运算符a . b    无法转换成整数时,运算结果为0

   eg:            NAN<<NAN=0

                  "a"<< infinity =0

注意点FORTH:     用0补足的右移运算符(>>>)

     eg:    

   "a">>>2=0

    a>>>NAN=0

   20>>>NAN=20

 

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!