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 相关文章推荐
ExtJS的FieldSet的column列布局
Nov 20 Javascript
使用IE6看老赵的博客 jQuery初探
Jan 17 Javascript
js对象的构造和继承实现代码
Dec 05 Javascript
Javascript 面向对象(一)(共有方法,私有方法,特权方法)
May 23 Javascript
js multiple全选与取消全选实现代码
Dec 04 Javascript
JavaScript判断密码强度(自写代码)
Sep 06 Javascript
轻松学习jQuery插件EasyUI EasyUI实现树形网络基本操作(2)
Nov 30 Javascript
JS模拟实现方法重载示例
Aug 03 Javascript
关于js二维数组和多维数组的定义声明(详解)
Oct 02 Javascript
什么是Vue.js框架 为什么选择它?
Oct 17 Javascript
vue element-ui 绑定@keyup事件无效的解决方法
Mar 09 Javascript
Postman动态获取返回值过程详解
Jun 30 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_SELF的安全问题
2009/09/05 PHP
PHP 删除一个目录及目录下的所有文件的函数代码
2010/05/26 PHP
如何利用PHP执行.SQL文件
2013/07/05 PHP
PHP版本升级到7.x后wordpress的一些修改及wordpress技巧
2015/12/25 PHP
PHP屏蔽关键字实现方法
2016/11/17 PHP
鼠标图片振动代码
2006/07/06 Javascript
js用图作提交按钮或超连接
2008/03/26 Javascript
js中将具有数字属性名的对象转换为数组
2011/03/06 Javascript
三级下拉菜单的js实现代码
2011/05/23 Javascript
jQuery中的height innerHeight outerHeight区别示例介绍
2014/06/15 Javascript
jQuery中parents()方法用法实例
2015/01/07 Javascript
jQuery采用连缀写法实现的折叠菜单效果
2015/09/18 Javascript
jquery可定制的在线UEditor编辑器
2015/11/17 Javascript
JS代码实现table数据分页效果
2016/05/26 Javascript
JavaScript实现简易的天数计算器实例【附demo源码下载】
2017/01/18 Javascript
常用的js方法合集
2017/03/10 Javascript
使用Node.js实现ORM的一种思路详解(图文)
2017/10/24 Javascript
zTree节点文字过多的处理方法
2017/11/24 Javascript
解决vue2.0路由跳转未匹配相应用路由避免出现空白页面的问题
2018/08/24 Javascript
关于JavaScript 数组你应该知道的事情(推荐)
2019/04/10 Javascript
layui 数据表格复选框实现单选功能的例子
2019/09/19 Javascript
vue实现手机端省市区区域选择
2019/09/27 Javascript
微信小程序实现星星评分效果
2020/11/01 Javascript
python判断图片宽度和高度后删除图片的方法
2015/05/22 Python
基于Django模板中的数字自增(详解)
2017/09/05 Python
python并发和异步编程实例
2018/11/15 Python
Python数据结构之栈、队列及二叉树定义与用法浅析
2018/12/27 Python
对python借助百度云API对评论进行观点抽取的方法详解
2019/02/21 Python
Python Django 命名空间模式的实现
2019/08/09 Python
Python 实现将大图切片成小图,将小图组合成大图的例子
2020/03/14 Python
html5 Canvas画图教程(3)—canvas出现1像素线条模糊不清的原因
2013/01/09 HTML / CSS
寄语学生的话
2014/04/10 职场文书
三八红旗手先进事迹材料
2014/05/13 职场文书
留学生求职信
2014/06/03 职场文书
中秋节国旗下演讲稿
2014/09/13 职场文书
结婚司仪主持词
2015/06/29 职场文书