我的编程空间,编程开发者的网络收藏夹
学习永远不晚

JS位运算符的使用方法有哪些

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

JS位运算符的使用方法有哪些

本篇内容主要讲解“JS位运算符的使用方法有哪些”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“JS位运算符的使用方法有哪些”吧!

    1. 使用左移运算符 << 迅速得出2的次方

    1 << 2  // 4, 即 2的2次方1 << 10 // 1024, 即 2的10次方// 但是要注意使用场景a = 2e9;   // 2000000000a << 1;    // -294967296

    2. 使用 ^ 切换变量 0 或 1

    // --- before ---    // if 判断    if (toggle) {        toggle = 0;    } else {        toggle = 1;    }    // 三目运算符    togle = toggle ? 0 : 1;        // --- after ---    toggle ^= 1;

    3. 使用 & 判断奇偶性

    console.log(7 & 1);    // 1    console.log(8 & 1) ;   // 0

    4. 使用 !! 将数字转为布尔值

    所有非0的值都是true,包括负数、浮点数:

    console.log(!!7);       // true    console.log(!!0);       // false    console.log(!!-1);      // true    console.log(!!0.71);    // true

    5. 使用~、>>、<<、>>>、|来取整

    相当于使用了 Math.floor()

    console.log(~~11.71)     // 11    console.log(11.71 >> 0)  // 11    console.log(11.71 << 0)  // 11    console.log(11.71 | 0)   // 11    console.log(11.71 >>> 0) // 11

    注意 >>> 不可对负数取整

    6. 使用^来完成值交换

    在 ES6 的解构赋值出来之前,用这种方式会更快(但必须是整数):

    // --- before ---    let temp = a; a = b; b = temp; // 传统,但需要借助临时变量    b = [a, a = b][0] // 借助数组        // --- after --- 只能用于整数    let a = 7    let b = 1    a ^= b    b ^= a    a ^= b    console.log(a)   // 1    console.log(b)   // 7        [a, b] = [b, a]; // ES6,解构赋值

    7. 使用^判断符号是否相同

    只能应用与整数

    (a ^ b) >= 0; //  true 相同; false 不相同

    8. 使用^来检查数字是否不相等

    // --- before ---    if (a !== 1171) {...};        // --- after ---    if (a ^ 1171) {...};

    9. n & (n - 1),如果为 0,说明 n 是 2 的整数幂

    JS位运算符的使用方法有哪些

    10. 使用 A + 0.5 | 0 来替代 Math.round()

    JS位运算符的使用方法有哪些

    String

    1. 使用toString(16)取随机字符串

    Math.random().toString(16).substring(2, 15);

    .substring() 的第二个参数控制取多少位 (最多可取13位)

    JS位运算符的使用方法有哪些

    2. 使用 split(0)

    使用数字来做为 split 的分隔条件可以节省2字节(不实用)

    // --- before ---    "alpha,bravo,charlie".split(",");        // --- after ---    "alpha0bravo0charlie".split(0);

    3. 使用.link() 创建链接

    一个鲜为人知的方法,可以快速创建 a 标签

    // --- before ---    let b = `<a herf="www.google.com">google</a>`;        // --- after ---    let b =  google .link( www.google.com );

    4. 使用 Array 来重复字符

        // --- before ---    for (let a = "", i = 7; i--;) a+= 0;        // --- after ---    let b = Array(7).join(0); // "0000000"let c = Array(7).join( La ) // "LaLaLaLaLaLa"        // ES6    let d = "0".repeat(7); // "0000000"

    其他一些花里胡哨的操作

    1. 使用当前时间创建一个随机数

        // --- before ---    let b = 0 | Math.random() * 100        // --- after ---    let a;    a = new Date % 100; // 两位随机数    a = new Date % 1000; // 三位随机数    a = new Date % 10000; // 四位随机数...依次类推    // 不要在快速循环中使用,因为毫秒可能没有变化;

    2. 一些可以替代 undefined 的操作

    JS位运算符的使用方法有哪些

    3. 使用 Array.length = 0 来清空数组

    4. 使用 Array.slice(0) 实现数组浅拷贝

    5. 使用 !+“1” 快速判断 IE8 以下的浏览器

    JS位运算符的使用方法有哪些

    6. for 循环条件的简写

        // --- before ---    for(let i = 0; i < arr.length; i++) {...}        // --- after ---    for(let i = arr.length; i--;) {...} // 注意 i-- 后面的分号别漏了

    到此,相信大家对“JS位运算符的使用方法有哪些”有了更深的了解,不妨来实际操作一番吧!这里是编程网网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!

    免责声明:

    ① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

    ② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

    JS位运算符的使用方法有哪些

    下载Word文档到电脑,方便收藏和打印~

    下载Word文档

    猜你喜欢

    JS位运算符的使用方法有哪些

    本篇内容主要讲解“JS位运算符的使用方法有哪些”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“JS位运算符的使用方法有哪些”吧!1. 使用左移运算符 << 迅速得出2的次方1 << 2 // 4
    2023-06-29

    逻辑运算符的使用方法有哪些

    逻辑运算符通常用于布尔类型的值之间进行比较和操作,常见的逻辑运算符有以下几种:1. 与运算符(&&):当且仅当两个操作数都为真时,结果才为真。2. 或运算符(||):当两个操作数中至少有一个为真时,结果为真。3. 非运算符(!):对操作数进
    2023-06-14

    C#支持的位运算符有哪些

    本篇内容主要讲解“C#支持的位运算符有哪些”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“C#支持的位运算符有哪些”吧!位运算符位运算符作用于位,并逐位执行操作。&、 | 和 ^ 的真值表如下所示
    2023-06-17

    C#位运算符种类有哪些

    这篇文章主要为大家展示了“C#位运算符种类有哪些”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“C#位运算符种类有哪些”这篇文章吧。C#位运算符的存在意义:在C#中可以对整型运算对象按位进行逻辑运
    2023-06-18

    C#中有哪些移位运算符

    今天就跟大家聊聊有关C#中有哪些移位运算符,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。C#移位运算符中的<< 和 >> 运算符用于执行移位运算。shift-expression:(
    2023-06-18

    java中位运算符的应用范围有哪些

    java中位运算符的应用范围有哪些?相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。常用的java框架有哪些1.SpringMVC,Spring Web MVC是一种基于Java的
    2023-06-14

    js如何使用位运算符来取整

    小编给大家分享一下js如何使用位运算符来取整,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!使用~、>>、<<、>>>、|来取整相当于使用了 Math.floor(
    2023-06-27

    Java中的位运算与移位运算有哪些

    本篇内容介绍了“Java中的位运算与移位运算有哪些”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!位运算按位“与” &规则: 如果两个相应的二
    2023-06-22

    C语言中位运算符"|"的高级用法有哪些

    本篇内容主要讲解“C语言中位运算符"|"的高级用法有哪些”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“C语言中位运算符"|"的高级用法有哪些”吧!一、将两个字节合并成一个16位整数#includ
    2023-07-06

    java的运算符有哪些?

    Java的运算符可分为4类:算术运算符、关系运算符、逻辑运算符和位运算符。算术运算符 Java的算术运算符分为一元运算符和二元运算符。一元运算符只有一个操作数;二元运算符有两个操作数,运算符位于两个操作数之间。算术运算符的操作数必须是数值类型。1、一元运算符:
    java的运算符有哪些?
    2016-06-14

    python中有哪些除法运算符

    这篇文章将为大家详细讲解有关python中有哪些除法运算符,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。python是什么意思Python是一种跨平台的、具有解释性、编译性、互动性和面向对象
    2023-06-15

    golang中除法运算符有哪些

    运算符有:1、“/”运算符,可对两个操作数进行除法运算,语法“操作数1 / 操作数2”;2、“%”取模(取余)运算符,可对两个操作数进行除法运算并返回余数,语法“操作数1 % 操作数2”;3、“/=”除赋值运算符,作用是先进行除法运算,再将结果赋值给运算符左侧的变量;4、“%”取余赋值运算符,作用是先进行取余运算,再将结果赋值给运算符左侧的变量。
    2023-05-14

    JavaScript中有哪些魔法运算符

    JavaScript中有哪些魔法运算符?针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。javascript是一种什么语言javascript是一种动态类型、弱类型的语言,基于
    2023-06-14

    Java运算符有哪些及如何使用

    这篇文章主要介绍了Java运算符有哪些及如何使用的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇Java运算符有哪些及如何使用文章都会有所收获,下面我们一起来看看吧。一、算术运算符运算符含义+求和-相减*乘积/商
    2023-06-29

    编程热搜

    • Python 学习之路 - Python
      一、安装Python34Windows在Python官网(https://www.python.org/downloads/)下载安装包并安装。Python的默认安装路径是:C:\Python34配置环境变量:【右键计算机】--》【属性】-
      Python 学习之路 - Python
    • chatgpt的中文全称是什么
      chatgpt的中文全称是生成型预训练变换模型。ChatGPT是什么ChatGPT是美国人工智能研究实验室OpenAI开发的一种全新聊天机器人模型,它能够通过学习和理解人类的语言来进行对话,还能根据聊天的上下文进行互动,并协助人类完成一系列
      chatgpt的中文全称是什么
    • C/C++中extern函数使用详解
    • C/C++可变参数的使用
      可变参数的使用方法远远不止以下几种,不过在C,C++中使用可变参数时要小心,在使用printf()等函数时传入的参数个数一定不能比前面的格式化字符串中的’%’符号个数少,否则会产生访问越界,运气不好的话还会导致程序崩溃
      C/C++可变参数的使用
    • css样式文件该放在哪里
    • php中数组下标必须是连续的吗
    • Python 3 教程
      Python 3 教程 Python 的 3.0 版本,常被称为 Python 3000,或简称 Py3k。相对于 Python 的早期版本,这是一个较大的升级。为了不带入过多的累赘,Python 3.0 在设计的时候没有考虑向下兼容。 Python
      Python 3 教程
    • Python pip包管理
      一、前言    在Python中, 安装第三方模块是通过 setuptools 这个工具完成的。 Python有两个封装了 setuptools的包管理工具: easy_install  和  pip , 目前官方推荐使用 pip。    
      Python pip包管理
    • ubuntu如何重新编译内核
    • 改善Java代码之慎用java动态编译

    目录