【发布时间】:2015-08-07 10:08:25
【问题描述】:
我有以下代码 - 它所做的只是抓取文本框中的值,对字符串执行正则表达式,然后计算字符串值中有多少个星号:
var textBoxValue = $(textbox).val();
function countHowManyWildCards(stringToSearch) {
var regex = new RegExp(/\*/g);
var count = stringToSearch.toString().match(regex).length;
return count;
}
if (countHowManyWildCards(textBoxValue) > 1) {
//Other code
}
代码似乎可以工作,但出现错误:
stringToSearch.toString().match(regex).length;
错误状态:
无法获取未定义或空引用的属性“长度”
但我不清楚为什么代码有效,但我仍然有这个错误?有人可以告诉我为什么会这样吗?
【问题讨论】:
-
.match 表示它返回 一个包含匹配结果的数组,如果没有匹配则返回 null。 所以你应该在访问长度之前检查它的
null。跨度>
标签: javascript jquery regex