我不明白为什么在尝试执行这个简单的JS代码后出现错误:
<!DOCTYPE html>
<html>
<script>
var str = "x*1/2";
var patt1 = /( * | \/)/g;
var result = str.match(patt1);
document.write(result.length);
</script>
</html>
typeof
来查看变量的类型:
str=string; patt1=object; result=object;
但我仍然不知道s
问题是什么。
答案 0 :(得分:2)
我不明白为什么在我尝试执行此操作后出现错误 简单的JS代码
这种情况正在发生,因为您的模式无法与提供的输入"x*1/2"
匹配。因此match
会返回null
。考虑以下片段,我们使用无意义的模式,但是可以匹配此输入。
var str = "x*1/2";
var patt1 = /([*]?\/)/g;
var result = str.match(patt1);
console.log(result.length);