在JavaScript中使用正则表达式时,遇到一个坑:第一次匹配是true,第二次匹配是false. 因为在带全局标识"g"的正则表达式对象中,才有“lastIndex” 属性,该属性用于指定下次匹配的起始位置. 例如: var pattern1 = new RegExp("1[0-9]{10}", "g"); // 带全局标识 var pattern2 = new RegExp("^1[0-9]{10}$"); // 不带全…
我一般对正则的使用方式如下,该方法会返回一个boolean值,然后对这个返回值来进行判断 // 判断是否是整数 function isInt(num) { var reg = new RegExp("^[0-9]*$"); return reg.test(num); } //检查email邮箱 function isEmail(str){ var reg = /^[a-z0-9]+([._\\-]*[a-z0-9])*@([a-z0-9]+[-a-z0-9]*[a-z0-9]+.){1…
此篇文章主要是提炼<JavaScript高级程序设计>中第六章的一些内容. 一:JS中OOP相关的概念 开始之前先总结JS中OOP相关的一些概念: 构造函数:JS中的构造函数就是普通的函数,当JS中的函数使用new调用时,这个函数就是构造函数.构造函数调用与普通函数调用相比会有以下两点不同: ① 在进入构造函数时,会先创建一个对象,并将构造函数的作用域赋值给这个对象(this指向这个对象) ② 在退出构造函数前,会默认返回创建的对象(返回this) 原型对象:每个函数都会有一个prototyp…