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 相关文章推荐
用javascript添加控件自定义属性解析
Nov 25 Javascript
jquery ajax应用中iframe自适应高度问题解决方法
Apr 12 Javascript
深入理解JavaScript系列(17):面向对象编程之概论详细介绍
Mar 04 Javascript
JavaScript学习笔记整理_关于表达式和语句
Sep 19 Javascript
Bootstrap弹出框modal上层的输入框不能获得焦点问题的解决方法
Dec 13 Javascript
解决浏览器会自动填充密码的问题
Apr 28 Javascript
Mint UI 基于 Vue.js 移动端组件库
Nov 07 Javascript
轻松学习JavaScript函数中的 Rest 参数
May 30 Javascript
React传值 组件传值 之间的关系详解
Aug 26 Javascript
基于layui的table插件进行复选框联动功能的实现方法
Sep 19 Javascript
vue使用showdown并实现代码区域高亮的示例代码
Oct 17 Javascript
微信小程序实现轨迹回放的示例代码
Dec 13 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学习之 认清变量的作用范围
2010/01/26 PHP
WordPress中调试缩略图的相关PHP函数使用解析
2016/01/07 PHP
PHP中set_include_path()函数相关用法分析
2016/07/18 PHP
PHP使用ActiveMQ实现消息队列的方法详解
2019/05/31 PHP
为指定元素增加样式的js代码
2009/12/09 Javascript
Javascript 键盘事件的组合使用实现代码
2012/05/04 Javascript
结合JQ1.9通过js正则判断各种浏览器版本的方法
2013/12/30 Javascript
js控制input框只读实现示例
2014/01/20 Javascript
页面内容排序插件jSort使用方法
2015/10/10 Javascript
jQuery UI Bootstrap是什么?
2016/06/17 Javascript
使用Bootstrap typeahead插件实现搜索框自动补全的方法
2016/07/07 Javascript
深入浅析jQuery对象$.html
2016/08/22 Javascript
JS使用cookie实现只出现一次的广告代码效果
2017/04/22 Javascript
JavaScript实现旋转轮播图
2020/08/18 Javascript
react router 4.0以上的路由应用详解
2017/09/21 Javascript
Vue-cli中为单独页面设置背景色的实现方法
2018/02/11 Javascript
使用Vue制作图片轮播组件思路详解
2018/03/21 Javascript
解决微信小程序防止无法回到主页的问题
2018/09/28 Javascript
如何在vue中使用HTML 5 拖放API
2021/01/14 Vue.js
Python 遍历子文件和所有子文件夹的代码实例
2016/12/21 Python
python实现机械分词之逆向最大匹配算法代码示例
2017/12/13 Python
Python 实现还原已撤回的微信消息
2019/06/18 Python
python实现移动木板小游戏
2020/10/09 Python
Python编写万花尺图案实例
2021/01/03 Python
纯css3实现图片翻牌特效
2015/03/10 HTML / CSS
详解CSS3实现响应式手风琴效果
2020/06/10 HTML / CSS
HTML5 weui使用笔记
2019/11/21 HTML / CSS
经贸韩语专业大学生职业规划
2014/02/14 职场文书
人民教师的自我评价分享
2014/02/21 职场文书
高中军训感言200字
2014/02/23 职场文书
劲霸男装广告词改编版
2014/03/21 职场文书
道德演讲稿
2014/05/21 职场文书
颂军魂爱军营演讲稿
2014/09/13 职场文书
领导干部群众路线教育实践活动个人对照检查材料
2014/09/23 职场文书
为了顺利买到演唱会的票用Python制作了自动抢票的脚本
2021/10/16 Python
Pandas实现批量拆分与合并Excel的示例代码
2022/05/30 Python