讨论.NET和网站技术/数据库
2007年4月16日 #
2007年2月11日 #
2007年1月13日 #
2006年12月28日 #
2006年12月23日 #
转自: http://bbs.blueidea.com/thread-2705905-1-1.html
转自:http://bbs.blueidea.com/thread-2704718-1-1.html
+++++++++++++不是reg.test改变了str,而是reg.test改变了reg的内部状态像这样的:alert(/\w*\[[^:]*\]\w*/g.test(str));alert(/\w*\[[^:]*\]\w*/g.test(str));alert(/\w*\[[^:]*\]\w*/g.test(str));alert(/\w*\[[^:]*\]\w*/g.test(str));就一直会有确定的结果,因为每一句里的正则表达式对象都是独立的虽然没看到有正式的资料,但我估计是这样的:加了全局标志的正则对象在test时会记录成功匹配的位置,下次调用test,会从该位置继续下面两段代码的执行结果可以证明这一点: