Javascript 按位取反运算符 (~)


Posted in Javascript onFebruary 04, 2014
result = ~ 【数字】

所有一元运算符(如 ~ 运算符)都按照下面的规则来计算表达式的值:

1、 如果应用于未定义的表达式或 null 表达式,则会引发一个运行时错误。
2、 将对象转换为字符串。
3、 如果可能,将字符串转换为数字。 否则,将引发运行时错误。
4、 布尔值被视为数字(如果为 false,则为 0;如果为 true,则为 1)。

运算符将应用于结果数字。

~ 运算符查看表达式的二进制表示形式的值,并执行位非运算。

表达式中的任何一位为 1,则结果中的该位变为 0。 表达式中的任何一位为 0,则结果中的该位变为 1。

下面的示例阐释了位非 (~) 运算符的用法,其中包含二进制表示十进制负数的,如果不熟悉这个请先看懂《十进制负数转换为二进制、八进制、十六进制》。

var temp = ~5;
/*
5 二进制 101,补满 32位
00000000000000000000000000000101
按位取反
11111111111111111111111111111010
由于32位开头第一个是1,所以这是一个负数,将二进制转换成负数,需要先反码
00000000000000000000000000000101
之后,再+1
00000000000000000000000000000110
转换成十进制为6,加上符号变成负数 -6
*/
alert(temp);
// 弹出【-6】
Javascript 相关文章推荐
客户端静态页面玩分页
Jun 26 Javascript
初学JavaScript第二章
Sep 30 Javascript
jquery插件制作 手风琴Panel效果实现
Aug 17 Javascript
关于javascript event flow 的一个bug详解
Sep 17 Javascript
jquery append()方法与html()方法的区别及使用介绍
Aug 01 Javascript
jQuery中prepend()方法使用详解
Aug 11 Javascript
JS+CSS实现简单的二级下拉导航菜单效果
Sep 21 Javascript
JS常用字符串方法(推荐)
Jan 15 Javascript
Ajax验证用户名或昵称是否已被注册
Apr 05 Javascript
angular实现图片懒加载实例代码
Jun 08 Javascript
element vue Array数组和Map对象的添加与删除操作
Nov 14 Javascript
JavaScript实现更换背景图片
Oct 18 Javascript
jQuery操作CheckBox的方法介绍(选中,取消,取值)
Feb 04 #Javascript
jquery操作复选框(checkbox)的12个小技巧总结
Feb 04 #Javascript
jquery 获取dom固定元素 添加样式的简单实例
Feb 04 #Javascript
jquery判断元素的子元素是否存在的示例代码
Feb 04 #Javascript
jquery中get,post和ajax方法的使用小结
Feb 04 #Javascript
jquery中get和post的简单实例
Feb 04 #Javascript
jquery中$.post()方法的简单实例
Feb 04 #Javascript
You might like
ubuntu12.04使用c编写php扩展模块教程分享
2013/12/25 PHP
PHP date()函数警告: It is not safe to rely on the system解决方法
2014/08/20 PHP
PHP实现通过CURL上传文件功能示例
2018/05/30 PHP
Laravel框架实现利用监听器进行sql语句记录功能
2018/06/06 PHP
js中同步与异步处理的方法和区别总结
2013/12/25 Javascript
jquery移动节点实例
2015/01/14 Javascript
javascript中的正则表达式使用指南
2015/03/01 Javascript
jQuery+canvas实现简单的球体斜抛及颜色动态变换效果
2016/01/28 Javascript
AngularJS $injector 依赖注入详解
2016/09/14 Javascript
通过修改360抢票的刷新频率和突破8车次限制实现方法
2017/01/04 Javascript
VUE axios发送跨域请求需要注意的问题
2017/07/06 Javascript
JS基于正则表达式实现的密码强度验证功能示例
2017/09/21 Javascript
实时监控input框,实现输入框与下拉框联动的实例
2018/01/23 Javascript
浅析vue-router jquery和params传参(接收参数)$router $route的区别
2018/08/03 jQuery
基于vue.js组件实现分页效果
2018/12/29 Javascript
Vue 样式绑定的实现方法
2019/01/15 Javascript
Node.js从字符串生成文件流的实现方法
2019/08/18 Javascript
vue实现鼠标经过动画
2019/10/16 Javascript
浅谈Node新版本13.2.0正式支持ES Modules特性
2019/11/25 Javascript
原生js实现表格翻页和跳转
2020/09/29 Javascript
[05:31]DOTA2英雄梦之声_第04期_光之守卫
2014/06/23 DOTA
python基础教程之类class定义使用方法
2014/02/20 Python
Python写的一个简单监控系统
2015/06/19 Python
python实现猜数游戏
2020/03/27 Python
python能做哪方面的工作
2020/06/15 Python
文字自荐书范文
2014/02/10 职场文书
安全承诺书格式
2014/05/21 职场文书
个人承诺书怎么写
2014/05/24 职场文书
宣传标语大全
2014/07/01 职场文书
无犯罪记录证明范本
2014/09/15 职场文书
2015年财务个人工作总结范文
2015/05/22 职场文书
国王的演讲观后感
2015/06/03 职场文书
2019年朋友圈经典励志语录50条
2019/07/05 职场文书
深入理解Pytorch微调torchvision模型
2021/11/11 Python
vue @click.native 绑定原生点击事件
2022/04/22 Vue.js
Java实现简单小画板
2022/06/10 Java/Android