优秀的编程知识分享平台

网站首页 > 技术文章 正文

js中!!符号的用法解读(js中!=是什么意思)

nanyue 2024-10-16 11:03:01 技术文章 8 ℃

最近在前端vue工程开发中看到一个js用法,对js初学者来说这是一个容易混淆的地方,趁此机会研究研究!!的用法。

if (!!getItem('Authorization')) {
console.log('已登录')
}

1、!的用法

!可将变量转换成布尔类型,对null、undefined和空字符串取反后均为true,对于非空字符串或非null对象,执行!运算后则为false,例如:

!null = true;

!undefined = true;

!'' = true;

!'wang' = false;

2、!!的用法

知道了!用法,!!就好理解啦,其实就是取非后再取非,常常用来做非空判断。!!常常可以简化代码,例如下面判断变量val为非null,未定义或者非空串才能执行方法体。

复杂写法:

var val;
if(val!=null&&typeof(val)!=undefined&&val!=''){
console.log('执行...');
}

利用!!只需要写一个判断表达:

if(!!val){
console.log('执行...');
}

两种写法达到的效果相同,val是有实际含义的变量才执行if内容,否则变量是null、undefined或''时都不会执行以下if代码块。综上所述!可以与变量进行逻辑与运算,然后转换为布尔值,!!正是这种运算的一个很好运用,使js在判断变量类型时变得高效。

最近发表
标签列表