Ich kann nicht herausfinden, ob eine Variable eine Regex ist. Aber ich muss auch herausfinden, ob es ein Objekt ist, also kann ich das typeof(regex) === 'object'
nicht verwenden und darauf verlassen, da es möglicherweise seit der if-Anweisung ausgeführt wird, als wäre es eine Regex. Aber ich würde es gerne in Legacy-Browsern auch arbeiten. Jede Hilfe wird sehr geschätzt.Erkennen, ob Variable ein Muster ist
var regex= /^[a-z]+$/;
//...Some code that could alter the regex variable to become an object variable.
if (typeof(regex) === 'object') {
console.log(true);
}
Die erste funktioniert nicht in IE. Testen Sie nicht auf Funktionsnamen. – Bergi
@Bergi Deshalb habe ich die anderen Methoden erwähnt. –
Aber warum alles erwähnen? Es erhöht nur die Chancen, dass jemand, der die Antwort liest, eine schlechte Praxis aufgreift (besonders, wie es zuerst erwähnt wird). – Bergi