首页 > 编程语言 >在JavaScript中,`!!`(不是not)操作符的作用是什么?

在JavaScript中,`!!`(不是not)操作符的作用是什么?

时间:2023-10-18 20:44:11浏览次数:44  
标签:false vertical JavaScript 操作符 navigator true 作用

内容来自 DOC https://q.houxu6.top/?s=在JavaScript中,!!(不是not)操作符的作用是什么?

我看到了一些代码,似乎使用了我不知道的操作符,形式为两个感叹号,就像这样:!!。有人能告诉我这个操作符是做什么的吗?

我看到这个操作符的上下文是:

this.vertical = vertical !== undefined ? !!vertical : this.vertical;


它把 Object 转换为 boolean。如果它是假值(例如,0nullundefined 等),那么它将是 false,否则是 true

!object  // 反转布尔值
!!object // 非反转布尔值,所以是 true 的布尔表示

因此 !! 不是一个操作符;它只是 ! 操作符的两次使用。

可能更简单的方法是:

Boolean(object) // 布尔值

真实世界的例子 "测试 IE 版本":

const isIE8 = !! navigator.userAgent.match(/MSIE 8.0/);
console.log(isIE8); // 返回 true 或 false

如果你 ⇒

console.log(navigator.userAgent.match(/MSIE 8.0/));
// 返回一个数组或 null

但如果你 ⇒

console.log(!!navigator.userAgent.match(/MSIE 8.0/));
// 返回 true 或 false

标签:false,vertical,JavaScript,操作符,navigator,true,作用
From: https://www.cnblogs.com/xiaomandujia/p/17773281.html

相关文章

  • JavaScript高级程序设计(第3版)pdf电子版Nicholas C. Zakas
    JavaScript高级程序设计(第3版)pdf电子版作者:[美]NicholasC.Zakas原作名:ProfessionalJavaScriptforWeb出版年:2012-3-29ISBN:9787115275790链接提取码:jz6rJavaScript最基础的书籍。......
  • 示波器探头各种作用及工作原理,你都理解清楚了吗?
    示波器因为有探头的存在而扩展了示波器的应用范围,使得示波器可以在线测试和分析被测电子电路,如下图:示波器探头的作用探头的选择和使用需要考虑如下两个方面:其一:因为探头有负载效应,探头会直接影响被测信号和被测电路;其二:探头是整个示波器测量系统的一部分,会直接影响仪器的信号......
  • JavaScript中'??'和'?.'
     ??空值合并运算符判断一直变量是否为'null'/'undefined',进行不同的返回值处理console.log(1??2)//1console.log(null??2)//2console.log(undefined??2)//2console.log(1??2??3)//1console.log(null??2??3)//2console.log(null??null??3)//3......
  • JavaScript的数字运算不准的问题
    JavaScript的运算问题存在两方面:第一个表示不准问题:打开浏览器按F12,在Console里,输入0.1+0.2=0.30000000000000004输入91.25*0.7=63.87499999999999 解决这个问题,要用第三方库math.js或decimal.js constmath=require('mathjs');console.log(math.add(0.1,0.2));......
  • iframe实现与父页面跨域隔离的JavaScript 代码沙箱
    这篇文章主要介绍了使用iframe实现与父页面跨域隔离的JavaScript代码沙箱,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪目录正文1.iframe2.dataURL3.将JavaScript代码变成dataURL4.如果需要获取执行结果的话,基于postMessage定制通信机制正文假......
  • JavaScript中高阶函数的巧妙运用
    JavaScript中的高阶函数是指可以接受其他函数作为参数或者返回一个函数作为结果的函数,本文介绍了JS中一些高阶函数的妙用,希望对大家有所帮助目录1.接受函数作为参数的高阶函数2.返回函数的高阶函数3.同时接受和返回函数的高阶函数JavaScript中的高阶函数是指可以接受其他函数作为参......
  • How to export objects to a csv file using pure JavaScript All In One
    HowtoexportobjectstoaCSVfileusingpureJavaScriptAllInOne如何使用纯JavaScript将对象导出到CSV文件CSVCSV使用,/逗号分隔CSVfileseparatorCSV文件分隔符Comma-separatedvalues(CSV)Comma-separatedvalues,afileformatandextension......
  • JavaScript百炼成仙之前言
    JavaScript是一种轻量级的动态编程语言,在诞生之时,JavaScript并没有受到人们的过多关注,但是谁也想不到,在大前端快速风靡的今天,JavaScript已经成为当今编程世界中优雅而不可或缺的一员。如果你是一名编程初学者,刚刚学习完HTML和CSS,那你就不得不接触JavaScript了。刚开始,你会用jQuery......
  • HINT的作用及书写要求
    什么是HINT及其作用HINT(提示)是出现在SQL语句的特定位置的一种特殊注释,它主要用于向Oracle数据库优化器传递指令,从而为SQL选择特定的执行计划。但是,当优化器无法按照HINT生成特定的执行计划时,它会忽略HINT。另外,也不是所有的HINT都是影响优化器和执行计划的。比如GATHER_PLAN_STATIS......
  • 第三章 方法和作用域
    3.1创建方法方法:是具名的语句序列,如C语言、C++等编程语言,可将方法视作与函数或者子程序相似的东西。每个方法都有名称和主体。方法名:方法的用途。方法主体:包含方法被调用时实际执行的语句。可以向方法提供数据处理,并让他返回处理结果。3.1.1声明方法声明C#方法语法ret......