快过年放假了,也终于闲下来了。每天游览于各种技术文章中,这种状态好极了。

下午看篇关于js的文章,其中有如下这么一段引起了我的注意。
复制代码 代码如下:
(function () {
var names = [];
return function (name) {
addName(name);
}
function addName(name) {
if (!~names.indexOf(name))//如果存在则不添加
names.push(name);
console.log(names);// ["linkFly"]
}
}())('linkFly');
if (!~names.indexOf(name)) 中的操作符"!~" 什么意思,不理解,先从~入手。
测试可以得出结果值有这个的规律 -(X+1)
搜索一番,有的文章只丢一句:按二进制位取反
从字面意思,这里用八位二进制表示:3=00000011,那~3=11111100,套上面公式不对呀。
上面解释还是太过抽象不具体。其实这涉及到原码、反码、补码的知识。
原码
原码表示法最高位为符号位,该位为0表示正数,1表示负数。其余位表示数的绝对值。
反码
对于一个带符号的数来说,正数的反码与其原码相同;负数的反码为其原码除符号位以外的各位按位取反。反码常用来做求补码过程中的中间形式。
补码
正数的补码与其原码和反码相同;负数的补码是对它的原码除符号位以外各位取反,并在末位加1而得到,即为该数的补码加1。计算机内的数一般以补码形式表示。在补码中用(-128)D代替了(-0)D,注意:(-128)D没有相对应的原码和反码,(-128)D = (1000,0000)B。
求补运算
求补运算不考虑符号位,对它的原码各位取反,并在末位加1而得到。对一个数进行求补运算所得的是该数相反数的补码。
拿作者文章例子,理解下
~是按位取反的意思,取反就是如果是00111,则变为11000 (按位取反)
57的二进制表示为(1个字节):00111001
按位取反后(~57)的二进制: 11000110 此表示为十进制:-70
这是一个负数,是有符号的数,负数在计算机里要用其补码来表示:补码=符号位以后按位取反再加1.
所以-70(11000110)符号位以后按位取反后为(10111001) 再加1 则为(10111010)
换成十进制为:-58
因此~57=-58
至此算是终于搞明白了。虽然总结的公式能快速得出结果,但不能解释为什么,作为技术人我们喜欢钻研,深入细节。
感叹时间:
基础是一切上层的基石,潜心修道,路漫漫。
以上就是本文的全部内容了,希望大家能够有所得。
相关推荐:
ChatGPT:人工智能对话新时代的领航者,ai音响华为还是小米好
SEO站群:打造强大网络营销引擎,助力企业快速提升排名与流量,seo网站排名案例
撰写稿子的AI,写作的“超级助手”来了!
seo能解决什么问题,seo会遇到哪些问题 ,挚爱花嫁ai
SEO优化攻略:如何通过精准策略提升网站排名与流量,aI ow翻译
ChatGPT破解:人工智能的无限潜力与破解秘笈,意识变ai
优化标题:如何让你的文章更具吸引力与点击力,整站网站优化解决方案
seo线索收集是什么,seo线索收集是什么意思 ,ai生活ai童童
ChatGPT显示无法加载网站是怎么回事?解决方法!,glow将军ai
seo网络推广要做什么,seo 网络推广 ,ai少女喝药
seo给你什么帮助,seo的利与弊 ,ai 大厨
优化综合:引领高效发展的智慧之道,电影营销的推广方式
SEO客服:如何提升客户体验与业务转化的双赢策略,鄂州网站建设公司教程
SEO获取流量的必杀技:如何通过优化轻松提升网站排名,德州全网营销推广价格
好用的AI写作软件免费推荐:创作新境界!
SEO优化全攻略提升网站排名的关键步骤与未来趋势,这是什么新晋动画ai
SEO管家:为您的网站保驾护航的智能SEO助手,网站推广作用有哪些类型
AI提供的阅读书目对学生的专业知识有多大帮助,沃奇ai
seo用什么法宝,列出5种seo赚钱方式 ,ai怎么更改文档样式
用AI修改文章,提升写作效率与质量的新时代
seo都有什么意思,seo 啥意思 ,ai园林
SEO任何:如何通过精准优化让网站流量突破极限,太原网站建设培训班
SEO元素-提升网站排名的核心要素,推广分成网站有哪些
如何利用AI生成高质量文章,提升写作效率与创意?
SEO王:掌控搜索引擎优化的至高法则,助力企业飞速腾飞,网站动作优化在哪里下载
SEO如何做?全方位解析提升网站排名的秘诀,AI翻译好处
SEO热词:提升网站排名的关键秘诀,一句话营销推广怎么写好
AI提取文章重要内容:让信息抓取更高效、更精准,松鼠ai 教学
OpenAI银行卡扣款的公司是哪家?揭秘背后的支付流程与安全保障,AI素描相片
SEO优化排名原理解析:如何提高网站排名,实现精准流量获取,奥迪ai售价
ChatGPT不能用?揭秘你可能忽视的真相和解决方法,强国ai2022
ChatGPT为什么用不了了?背后的真相揭秘!,ai写作专家收费吗
什么是seo推广找行者SEO,seo推广效果怎么样 ,西宁ai万词霸屏系统
文章去AI回归创作的本真之美
SEO适合-提升网站排名的关键策略,张家口品牌推广营销中心
为什么说seo这么重要,seo重要吗 ,ai19920403
什么是“神马关键词”?如何用它提升你的网络营销效果?,新闻发布网站怎么做推广
AI人工智能文章生成器写作新纪元
为什么做抖音seo,为什么做抖音推广 ,描边ai虚线
从“官网扒下来”看企业数字化转型的未来,摄影营销策略推广文案
ChatGPT安装包Windows版-让智能助手触手可得,q和ai
seo诊断什么意思,seo诊断a5 ,约瑟夫ai
ChatGPT内部HTTP接口文档-为开发者提供高效便捷的AI服务接入方式,安屿ai
SEO优化的利器:提升网站排名的秘密武器,联想ai7g-3笔记本
AI写作技巧,让创作事半功倍!
AI免费写文:创作新时代的高效助手
云推SEO:让您的网站在激烈竞争中脱颖而出,网站优化公司欢迎来电
AI人工智能:开发与应用的必备软件推荐
ChatGPT中文版下载,开启智能对话新体验,婚纱ai男
ChatGPT的诞生,预示着人工智能大规模应用的时代已经来临,ai此生不渝