javascript - 当匹配什么都没找到时如何得到假?
问题描述
当我运行此代码时:
var foundUrlString = savedPage.match( /og:url.*="(http.*\.com)/i );
var foundUrl = foundUrlString[1];
如果页面上没有匹配项,我会收到错误消息:
表达式 'foundUrlString' [null] 的结果不是对象
当没有匹配项而不是此错误时,如何获得“假”?
解决方案
离开你所拥有的,你可以在第二行添加一个“真实”检查:
var foundUrlString = savedPage.match( /og:url.*="(http.*\.com)/i );
var foundUrl = !!foundUrlString && foundUrlString[1];
这将foundUrl
作为匹配的字符串或false
.
推荐阅读
- java - 值未在 Java 中保持设置
- javascript - data.map(item =>{...}) 返回以下错误
- node.js - 我的表格没有正确地走路线
- javascript - 如何在Javascript中运行一次函数?
- php - 在 laravel 中下载文件时找不到文件错误
- r - 如何对观察结果运行白噪声和自回归模型(1)
- python - 想使用 python 将我存在于 csv 中的数据相乘
- typescript - Angular 10 和 ES2020 中的可选链接模块解析失败
- javascript - D3 Web 地图:将光栅 PNG 与 TopoJSON 对齐
- html - 使用一个元素在它后面的元素中创建一个“窗口”