<script type="text/ecmascript">
var c = function (a) {
var globala = /^(?:)$/;
var globalb = /^(?:)$/;
return a ? globala : globalb;
};
alert(c(0) === c(0)); //true IE:false
alert(c(1) === c(1)); //true IE:false
alert(c(1) === c(0)); //false IE:false
//有测试得出在c的作用域里的/.../不管调用多少次,都是引用的同一对应的range对象。。。仅限/.../产生的对象。。。
//注:此测试结果在OP和FF得出
//这样的效果会产生无辜的错误。。比如
var a = function (val) {
//当然,这个g完全没有意义,加它只是为了体现错误。。。
return /^/d+$/g.test(val);
};
alert(a(1)); //true IE:true
alert(a(2)); //false IE:true
alert(a(3)); //true IE:true
</script>