正则在FireFox和IE下使用test的不同

编程学习 2021-07-05 10:07www.dzhlxh.cn编程入门
今天同事遇到这样的问题,查明原因.记下 由于FireForx和IE的执行javascript的引擎不同,所以会有些不同。以下的例子
代码如下:

<script language="javascript" type="text/javascript">
function fun(){
document.write(/a/gi.test("a"));
}
fun()
fun()
</script>


在IE的执行结果是:truetrue
在FireFox的执行结果是:truefalse
在正则中/expression/gi,g是表示global全局,i是表示不区分大小写。
一般global属性为true,做test应用不好.所以/a/gi意味着多个搜索
而test是单次匹配。正确的应该写/a/i,或/a/.

FireFox规范点了!

Copyright © 2016-2025 www.dzhlxh.cn 金源码 版权所有 Power by

网站模板下载|网络推广|微博营销|seo优化|视频营销|网络营销|微信营销|网站建设|织梦模板|小程序模板