首页 > 其他分享 >'~'运算符在JS中的运用【代码简化】

'~'运算符在JS中的运用【代码简化】

时间:2022-09-30 10:11:37浏览次数:40  
标签:arr const JS 运算符 item 简化 数组

直接上代码:
const arr = ['a','b','c'] const item = 'a' 我们想判断item在数组中是否存在,一般情况大家会这么写: if(arr.indexOf(item) > -1){      console.log('找到item'); }

这样写后面的 >-1 看着感觉有点不舒服
但是不写的话,识别到数组中的第一个元素返回0,会隐式转换为false
这时我们可以使用位取反运算符'~'

if(~arr.indexOf(item)){
      console.log('找到item');
}

这样,只要item存在于arr数组中,都可以被识别了

标签:arr,const,JS,运算符,item,简化,数组
From: https://www.cnblogs.com/ww-garden/p/16743964.html

相关文章

  • js中拼接字符串作为变量名后赋值
    js中有业务场景需要生成很多的变量,但是变量的名称是根据参数的不同而区分的。一般情况下我们会构建一个数组,然后通过数组下标的形式来操作。 意外发现一个方法可......
  • nodejs基础
    Node.js目的了解nodejs了解后端读取本地文件连接数据库的响应请求了解api接口文档检测是否有nodenode-v初始化项目切换到项目目录npminit-y使......
  • 富文本编辑器 quill.js 开发(一): 自定义工具栏
    前言在前端开发中,富文本是一种常见的业务场景,而本文要讲的就是富文本框架quill.js中的自定义工具栏的开发介绍Quill.js是一个具有跨平台和跨浏览器支持的富文本......
  • 运算符
    运算符算术/赋值/关系运算符//二元运算符//Ctrl+D:复制当前行到下一行inta=10;intb=20;intc=25;int......
  • js中返回对象键名的方法
    一、通过forin循环方法letobj={a:1,b:2,c:3}letkey=null;for(keyinobj){console.log(key);//分别输出abc}二、通过Object.keysconstobj={a:1......
  • js bitwise operators All In One
    jsbitwiseoperatorsAllInOnejs位运算符~<<>>refshttps://zzk.cnblogs.com/my/s/blogpost-p?Keywords=bitwise©xgqfrms2012-2020www.cnblogs.com/xg......
  • C#中对象与JSON字符串互相转换的三种方式
    JSON(JavaScriptObjectNotation,JS对象标记)是一种轻量级的数据交换格式。关于内存对象和JSON字符串的相互转换,在实际项目中应比较广泛,经过一番搜索,找到如下三种方法......
  • jsonp 跨域请求
    背景:JavaScript是一种在Web开发中经常使用的前端动态脚本技术。在JavaScript中,有一个很重要的安全性限制,被称为“Same-OriginPolicy”(同源策略)。这一策略对于JavaScrip......
  • pandas 某几列转为json/dic 格式
    #%%importpandasaspddf=pd.read_excel('工作表.xlsx')col_list=list(df.columns)del_col_list=['c','d']#需要删除的字段名#构造备注列df['beizhu']=''for......
  • 序列化成Json时,多个对象互相引用导致死循环 Text.Json.JsonException: A possible obj
    错误:当两个类中的属性互相引用时,导致对象实例序列化成Json时死循环,错误如下:System.Text.Json.JsonException:Apossibleobjectcyclewasdetected.Thiscaneither......