javascript RegExp模式在与test()方法一起使用后发生更改
javascript RegExp pattern change after used with test() method
我有一个简单的模式来验证时间-24小时模式-
var patt = /^([0-1][0-9]|[2][0-3]):([0-5][0-9])$/g;
如果我用.test()
方法执行这个模式两次,我会得到两个不同的值
像这个
代码
console.log(patt.test('01:09')); // true
console.log(patt.test('01:09')); // false
我注意到,如果我做以下操作,我会得到相同的结果:
var patt = /^([0-1][0-9]|[2][0-3]):([0-5][0-9])$/g;
console.log(patt.test('01:09')); // true
var patt = /^([0-1][0-9]|[2][0-3]):([0-5][0-9])$/g;
console.log(patt.test('01:09'));//true
问题在我的情况下,我将重新启动patt
对象作为变通方法,但我很想知道会发生什么
此外,我注意到patt
对象在与test()
方法一起使用后不会更改
jsFiddle为那些想要证明的东西
删除global
标志。目前,它正在第二次搜索输入字符串的末尾,在那里它不会再找到模式。有关lastIndex
属性,请参阅文档。
相关文章:
- javascript中是否有更标准化的方法来转换(序列化)非表单数据以与ajax一起使用
- 一种将Apache Thrift JS绑定与Backbone.JS一起使用的方法
- 将 JSDoc 与匿名对象和该对象的函数一起使用的正确方法
- 与 promise 一起使用时,异步瀑布不执行下一个回调方法
- 将 react-redux 与基于事件的第三方库一起使用的最佳方法是什么?
- 将FitText与change()方法一起使用
- 获得错误“;对象没有方法'jScrollPane'"与AngularJS一起使用时
- 如何将包含猫鼬函数的方法与控制流框架(例如异步或 Step)一起使用
- jquery:如何将 .hide() 方法与 .fadeToggle(“fast”) 动画一起使用
- 错误 405 方法未分配异常,当使用 AJAX 与 Laravel 一起发布时
- 将闭包编译器的类型安全性与AMD(requirejs)结合在一起的最可靠方法是什么?
- 我可以将javascript和方法中的属性链接在一起吗?
- 是否可以在 javascript 中将对象的默认方法与其他方法一起使用
- 任何使postMessage与HTTPS一起工作的方法
- 为什么javascript方法在与setTimeout一起使用时会失去与对象的连接
- 与compareFunction一起使用的排序方法背后的逻辑是什么
- 有没有一种方法可以将json文件与所有其他js文件一起加载
- 如何在 JavaScript 中使用继承与构造函数方法一起使用 返回具有私有属性的对象文本
- MVC-有没有一种很好的方法可以将控件与它们各自的javascript捆绑在一起
- 将Ember.js与Fabric.js这样的画布库集成在一起的正确方法是什么