欢迎来到Doc100.Net免费学习资源知识分享平台!
您的位置:首页 > 程序异常 >

javascript在firefox下出现的古怪有关问题,同一函数多次返回的值多不相同

更新时间: 2015-02-07 01:26:28 责任编辑: Author_N8

 

Javascript在FireFox下出现的古怪问题,同一函数多次返回的值多不相同
代码很简单,如下,在IE中运行一切正常,使用FireFox时,alert的值依次是:abcd;true;abcd;false 
请大侠指点问题所在(注:不使用prototype,也存在这个问题):
JScript code

    <script language="javascript" type="text/javascript">
        window.onload = Init;
        function Init(){
            var str = "abc中国人ddd";
            alert(str.left(4));
            alert(str.left(4));
            alert(str.left(4));
            alert(str.left(4));
        }

        String.prototype.left = function(){
            if(arguments[0] && /^\d+$/ig.test(arguments[0]) ){
                return "abcd";
            }
            else{
                return (arguments[0] && /^\d+$/ig.test(arguments[0]) );
            }
        }

    </script>



------解决思路----------------------
JScript code
/^\d+$/

------解决思路----------------------
估计是用了g模式后,IE和FF的表现不同,不过也真的挺奇怪的。不用g模式,一切正常。
------解决思路----------------------
飘过!
------解决思路----------------------
没有太大的问题啊
你的规则式其实有点多余,改成
var rg=/^\d+$/ ;
或者
var rg=/^\d+$/i ; 
就够了。
<script language="javascript" type="text/javascript">
window.onload = Init;
function Init(){
var str = "abc中国人ddd";
alert(str.left(4));
alert(str.left(4));
alert(str.left(4444));
alert(str.left('4a4'));
alert(str.left('a'));
alert(str.left());
}

String.prototype.left = function(){
var rg=/^\d+$/ ;
var str1='';
if(arguments[0]){
str1=arguments[0];
if (rg.test(str1)){
return "abcd";
}
else{
return false;
}
}
else{
return arguments[0];
}
}
</script>

你在firefox下最好安装firebug调试工具来看到底问题在哪里。

不过真的好像firefox的javascript支持中对 //g这样的规则式处理有点问题。
------解决思路----------------------
http://www.cnblogs.com/huqingyu/archive/2007/07/03/720657.html
------解决思路----------------------
上面N人回答了, 就留个言吧. 嘿嘿/
------解决思路----------------------
jf...
------解决思路----------------------
JScript code
function a(val) 
{ 
  var re = /^\d+$/g;
  alert(re.lastIndex);
  return re.test(val); 
} 
alert(a(5)); 
alert(a(6)); 		
上一篇:上一篇
下一篇:下一篇

 

随机推荐程序问答结果

 

 

如对文章有任何疑问请提交到问题反馈,或者您对内容不满意,请您反馈给我们DOC100.NET论坛发贴求解。
DOC100.NET资源网,机器学习分类整理更新日期::2015-02-07 01:26:28
如需转载,请注明文章出处和来源网址:http://www.doc100.net/bugs/t/960775/
本文WWW.DOC100.NET DOC100.NET版权所有。