js中在变量名前加"~" 是位运算NOT,按位取反.
var iNum1 = 25;
//25 二进制原码等于 00000000000000000000000000011001
var iNum2 = ~iNum1;
//转换为 11111111111111111111111111100110
alert(iNum2);//输出 "-26"
相当于是对数值求负后减1 ,25 -> -25 -> -26
if (~this.cartIds.indexOf(item.id)) {
//在if判断里,只要是非0都会进入
//当this.cartIds包含item.id时,返回的是0,然后~取反为-1
}
在函数前加上波浪号,其作用是把函数声明转换为表达式,就可以直接将下面的代码放入某个函数里运行。
function functionName() {
//执行的代码
~function sayHello(){ console.log('hello');}()
}
本文地址:https://blog.csdn.net/Aaren_Jiang/article/details/107303023
如对本文有疑问, 点击进行留言回复!!
荐 超强的入门文章 !!! JavaScript 速成计划第二篇(杂项详解:JS操作HTML 与 CSS、异常、事件)!
教你搭建 nodejs+mongoose+Graphql+Vue+Typescript 框架(上)
【Nginx】如何为已安装的Nginx动态添加模块?看完我懂了!!
网友评论