注意 JavaScript 中 RegExp 对象的 test 方法_javascript技巧
JavaScript 中的 RegExp 对象用于正则表达式相关的操作,这个对象提供了一个方法 test 来判定某个字符串是否满足某个 pattern. 返回值是 true/false.
今天我碰到了一个问题:
[Ctrl+A 全选 注:如需引入外部Js需刷新才能执行]
我估计问题的原因可能是因为 RegExp 对象是有状态的,并且在 test 方法的执行时会在某个步骤中利用到状态信息,这样就造成了错误。
(注:RegExp 全局对象有一些静态属性和方法,比如 RegExp.$1... RegExp$9, 等)
解决这个问题的办法也很简单,就是每次重新初始化一次正则表达式对象:
[Ctrl+A 全选 注:如需引入外部Js需刷新才能执行]
了解这个问题详细原因的朋友,请不吝指教。
当然,你用了全局匹配模式 g. 所以用完要重置 lastIndex
var re = /^\d+(?:\.\d)?$/ig; //==> "ig"
alert(re.test('112.3'));
re.lastIndex=0 //加这句
alert(re.test('33'));
或者
var re = /^\d+(?:\.\d)?$/i; //==> only "i", no g
alert(re.test('112.3'));
alert(re.test('33'));
这样就OK了
对于你这个应用环境来说,是不需要 "g" 的,其实 "i" 也不要,
匹配一个数字要区分大小写吗??
不管加 "i" 还是加 "g" 都会让你的代码变慢。
建议只有在非常必要的情况下才加上ig

Heiße KI -Werkzeuge

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

AI Hentai Generator
Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

Heiße Werkzeuge

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Heiße Themen



Huawei führt weltweit die Softwareversion 5.0.0.100 (C00M01) für die Smartwatches Watch GT 5 und Watch GT 5 Pro ein. Diese beiden Smartwatches wurden kürzlich in Europa eingeführt, wobei das Standardmodell das günstigste Modell des Unternehmens ist. Diese Harmonie

Katsuhiro Harada, der Regisseur der Tekken-Serie, versuchte einst ernsthaft, Colonel Sanders in das legendäre Kampfspiel einzubeziehen. In einem Interview mit TheGamer verriet Harada, dass er die Idee dem KFC Japan vorstellte, in der Hoffnung, die Fast-Food-Legende als Gast hinzuzufügen

Anfang September 2024 wurde das 140-W-Ladegerät Zolo von Anker durchgesickert, und das war eine große Sache, da es sich um das erste Wandladegerät mit Display des Unternehmens überhaupt handelte. Jetzt gibt uns ein neues Unboxing-Video von Xiao Li TV auf YouTube einen ersten Blick auf den Hi

Garmin beendet den Monat mit einer Reihe neuer stabiler Updates für seine neuesten High-End-Smartwatches. Um es noch einmal zusammenzufassen: Das Unternehmen hat die Systemsoftware 11.64 veröffentlicht, um den hohen Batterieverbrauch bei Enduro 3, Fenix E und Fenix 8 zu bekämpfen (aktuell 1.099,99 $ bei Amazon).

Xiaomi wird in Kürze den Mijia Graphene Oil Heater in China auf den Markt bringen. Das Unternehmen führte kürzlich eine erfolgreiche Crowdfunding-Kampagne für das Smart-Home-Produkt durch, die auf seiner Youpin-Plattform gehostet wurde. Laut der Seite hat der Versand des Geräts bereits begonnen

Tesla bringt die neueste Version 12.5.5 des vollständig autonomen Fahrens (Supervised) auf den Markt und bringt damit endlich die versprochene Cybertruck-FSD-Option mit, zehn Monate nachdem der Pickup mit der im Ausstattungspreis der Foundation Series enthaltenen Funktion in den Verkauf ging. F

Die Einführung des lang erwarteten faltbaren „Special Edition“-Modells von Samsung hat eine weitere Wendung genommen. In den letzten Wochen verliefen die Gerüchte um die sogenannte Galaxy Z Fold Special Edition eher ruhig. Stattdessen hat sich der Fokus auf die Galaxy S25-Serie verlagert, darunter

Mit einer Geschichte von über einem Jahrzehnt gilt Manjaro als eine der benutzerfreundlichsten Linux-Distributionen, die sowohl für Anfänger als auch für Power-User geeignet ist und einfach zu installieren und zu verwenden ist. Diese Arch-basierte Distribution wurde hauptsächlich in Österreich, Deutschland und Frankreich entwickelt
