为什么空结果会冻结脚本以及如何避免它
Why a null result is freezing the script and how to avoid it?
当我使用以下代码时:
if(string.match(/td>0/g).length == 8) {
/*Do something*/
}
并且没有匹配/td>0/
,它会返回一个null
结果,阻止下面的脚本执行。
我想知道为什么代码冻结,以及如何避免它并找到.match()
的解决方案或替代方案?
您可以先添加一个null
检查 -
if(string.match(/td>0/g) != null && string.match(/td>0/g).length == 8) {
/*Do something*/
}
试试这个(更多推荐):
var matching=string.match(/td>0/g);
if( matching != null && matching.length === 8) {
/*Do something*/
}
使用 ===
而不是 ==
。
在检查长度之前,您需要进行空检查。我会先做比赛,然后检查
var result = string.match(/td>0/g);
if (result && result.length) {}
或使用 or 来捕获空值
if( (string.match(/td>0/g)||"").length ) {}
相关文章:
- scriptlet中的脚本-如何避免不好的实践
- 避免使用神秘的javascript"脚本错误”;使用cdn
- nodejs-如何修复服务器脚本以避免崩溃
- 如果JSON解析对象不存在,如何避免脚本损坏
- 如何避免在我没有的远程脚本上运行javascript错误't控制
- 避免'脚本没有响应'使用反向AJAX/Comet
- 避免“;无响应脚本"foreach循环中的消息
- 一个可翻译成JavaScript的脚本,带有callback-hell自动避免器
- 避免在变量之一未定义所有脚本停止工作时出错
- 输出脚本标签而不带jQuery,避免执行
- 为什么空结果会冻结脚本以及如何避免它
- 如何在文本框上输入时避免 css 和脚本效果
- 将 HTML 源代码注入 iframe 以避免跨站点脚本问题
- 如何避免在 js/ajax 脚本中对应用程序上下文路径进行硬编码
- 避免仅使用前端脚本对 Google 进行地理编码的多次请求
- ie8javascript停止脚本我可以使用settimeout来中断执行并避免错误
- Node.js/JavaScript-避免用户输入脚本和html实体
- 避免“;是否停止脚本"IE中的对话框
- 避免谷歌应用程序脚本中的formatDate错误
- 如何在js解释器工作期间防止/避免脚本执行