当前位置: 首页 > news >正文

String.prototype.match进行==判断

今天发现一个String.prototype.match的奇葩用法

export const isWeChat = (() => {let ua = window.navigator.userAgent.toLowerCase();return ua.match(/MicroMessenger/i) == "micromessenger";
})();

这是我在网站上找到的一个判断是否是微信浏览器的方法,不知道有没有注意到这句话ua.match(/MicroMessenger/i) == "micromessenger",但是match方法返回的是RegExpMatchArray | null类型的数据,那么这里用== micromessenger,判断是什么意思呢?

其实RegExpMatchArray是一个伪数组,当进行== micromessenger判断的时候会进行类型转换,这里也就是会调用toString方法,所以就可以这样判断了。具体细节大家可以查询一下有关js类型转换的知识。

http://www.lryc.cn/news/250138.html

相关文章:

  • less 笔记
  • Java中的异常你了解多少?
  • 查找算法及哈希表
  • ELK分布式日志管理平台部署
  • 四、虚拟机网络配置
  • 四、Lua循环
  • 生成对抗网络(GAN)手写数字生成
  • LeetCode Hot100 31.下一个排列
  • Redis主从与哨兵架构详解
  • Linux:docker的数据管理(6)
  • 深入理解Zookeeper系列-1.初识Zoookeeper
  • 芯片技术探索:了解构芯片的设计与制造之旅
  • STM32 超声波模块(HC-SR04)
  • ELK+Filebeat
  • MySql之锁表、锁行解决方案
  • 2023年第十六届山东省职业院校技能大赛中职组“网络安全”赛项竞赛正式试题
  • JAVA 整合 AWS S3(Amazon Simple Storage Service)文件上传,分片上传,删除,下载
  • 记录:Unity脚本的编写9.0
  • 共享单车停放(简单的struct结构运用)
  • 【Java8系列07】Java8日期处理
  • 为什么做CSGO搬砖的不直接去炒股呢?
  • 12月01日,每日信息差//阿里国际发布3款AI设计生态工具//美团买菜升级为“小象超市”//外国人永居证换新、6国游客免签来华
  • ChatGPT探索:提示工程详解—程序员效率提升必备技能【文末送书】
  • Pytest做性能测试?
  • Swagger各版本访问地址
  • docker-compose;私有镜像仓库harbor搭建;镜像推送到私有仓库harbor
  • OpenTSDB(CVE-202035476)漏洞复现及利用
  • Maven无法拉取依赖/构建失败操作步骤(基本都能解决)
  • 【数据库】数据库并发控制的目标,可串行化序列的分析,并发控制调度器模型
  • 带头结点的双向循环链表