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 相关文章推荐
jQuery 1.9移除了$.browser可以使用$.support来替代
Sep 03 Javascript
输入框过滤非数字的js代码
Sep 18 Javascript
jQuery中hide()方法用法实例
Dec 24 Javascript
使用js画图之画切线
Jan 12 Javascript
js实现鼠标划过给div加透明度的方法
May 25 Javascript
JavaScript中的原型继承基础学习教程
May 06 Javascript
javascript事件处理模型实例说明
May 31 Javascript
bootstrap css样式之表单
Jan 19 Javascript
Vue非父子组件通信详解
Jun 12 Javascript
vue2.0 根据状态值进行样式的改变展示方法
Mar 13 Javascript
JS canvas绘制五子棋的棋盘
May 28 Javascript
使用apifm-wxapi快速开发小程序过程详解
Aug 05 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
PHP 递归效率分析
2009/11/24 PHP
php5.3 废弃函数小结
2010/05/16 PHP
一个显示某段时间内每个月的方法 返回由这些月份组成的数组
2012/05/16 PHP
php基于mcrypt_encrypt和mcrypt_decrypt实现字符串加密解密的方法
2016/07/12 PHP
PHP共享内存使用与信号控制实例分析
2018/05/09 PHP
php5.3/5.4/5.5/5.6/7常见新增特性汇总整理
2020/02/27 PHP
深入理解vue路由的使用
2017/03/24 Javascript
基于js中style.width与offsetWidth的区别(详解)
2017/11/12 Javascript
Node.js中DNS模块学习总结
2018/02/28 Javascript
JS实现导出Excel的五种方法详解【附源码下载】
2018/03/15 Javascript
jQuery发请求传输中文参数乱码问题的解决方案
2018/05/22 jQuery
vue监听input标签的value值方法
2018/08/27 Javascript
小程序自定义单页面、全局导航栏的实现代码
2019/03/15 Javascript
详解auto-vue-file:一个自动创建vue组件的包
2019/04/26 Javascript
微信小程序之侧边栏滑动实现过程解析(附完整源码)
2019/08/23 Javascript
vue-cli2与vue-cli3在一台电脑共存的实现方法
2019/09/25 Javascript
解决antd 表单设置默认值initialValue后验证失效的问题
2020/11/02 Javascript
在Django的模板中使用认证数据的方法
2015/07/23 Python
对python遍历文件夹中的所有jpg文件的实例详解
2018/12/08 Python
selenium+python自动化测试之使用webdriver操作浏览器的方法
2019/01/23 Python
Python 3.9的到来到底是意味着什么
2020/10/14 Python
Raleigh兰令自行车美国官网:英国凤头牌自行车
2018/01/08 全球购物
英国第一的购买便宜玩具和游戏的在线购物网站:Bargain Max
2018/01/24 全球购物
Hotels.com印度:酒店预订
2019/05/11 全球购物
大学生个人总结的自我评价
2013/10/05 职场文书
教师求职自荐信
2014/03/09 职场文书
校庆筹备方案
2014/03/30 职场文书
初中班主任经验交流材料
2014/05/16 职场文书
小学校园文化建设汇报材料
2014/08/19 职场文书
生死抉择观后感
2015/06/09 职场文书
公司仓库管理制度
2015/08/04 职场文书
任命书格式模板
2015/09/22 职场文书
公证书
2019/04/17 职场文书
Django一小时写出账号密码管理系统
2021/04/29 Python
简单总结SpringMVC拦截器的使用方法
2021/06/28 Java/Android
javascript之Object.assign()的痛点分析
2022/03/03 Javascript