亚洲国产日韩欧美一区二区三区,精品亚洲国产成人av在线,国产99视频精品免视看7,99国产精品久久久久久久成人热,欧美日韩亚洲国产综合乱

Inhaltsverzeichnis
Das Triggerereignis kann eines der Tastaturereignisse sein. Ich habe das Ereignis des Eingangsfelds von KeyUp
, die zu entfernenden Klassen und die zugegebenen Klassen. Die Helferfunktion, die als Standard -
Heim Web-Frontend js-Tutorial Erstellen Sie einen einfachen Kennwortst?rkeprüfer

Erstellen Sie einen einfachen Kennwortst?rkeprüfer

Mar 09, 2025 am 12:08 AM

sofortiges Feedback ist das Inting im Moment. Warum beschr?nken Sie sich auf die überprüfung von Benutzernamen und E -Mail -Adressen? Warum nicht dies erweitern, um ein schnelles visuelles Feedback zur St?rke des Kennworts zu geben, den der Benutzer Eingaben hat? Heute werfen wir einen Blick darauf, wie Sie einen einfachen Kennwortst?rkeprüfer mit regul?ren Ausdrücken und einen einfachen Algorithmus erstellen. Selbst die sichersten Systeme sind anf?llig, wenn ein Benutzer ein ?u?erst schlecht beratenes Passwort w?hlt. In diesem Sinne scheint der jüngste Trend dem Benutzer schnell Feedback zur St?rke des Kennworts zu geben, damit der Benutzer das Kennwort erweitern oder ?ndern kann, um es sicherer zu machen. Interessiert? Fangen wir sofort an! Hier ist eine Demo von dem, was wir heute zu erstellen versuchen:

Designziele Unsere Designziele für diese spezifische Funktionalit?t sind relativ klein. Dies bedeutet, dass Sie nicht auf eine Schaltfl?che klicken, um die St?rke zu testen.

Das Triggerereignis kann eines der Tastaturereignisse sein. Ich habe das Ereignis des Eingangsfelds von KeyUp

ausgew?hlt. In Bezug auf die Verschwendung von CPU-Zyklen für ungültige Eintr?ge. Der Algorithmus analysiert die Zeichenfolge, wobei Boni für zus?tzliche L?nge und Verwendung von Zahlen, Symbolen und Gro?buchstaben sowie Strafen für Eing?nge von Buchstaben oder Zahlen verwendet wird. Wir werden uns nicht ansehen, die Eingabe gegen ein W?rterbuch zu überprüfen, da dies nicht im Rahmen des Artikels liegt. Wenn es gr??er als die minimale L?nge ist, geben Sie ihm eine Basisbewertung von 50. Ansonsten machen Sie es 0. Als n?chstes durch jedes Zeichen der Zeichenfolge und prüfen Sie, ob es sich um ein Symbol, eine Nummer oder ein Gro?buchstaben handelt. Wenn ja, notieren Sie sich das.

überprüfen Sie dann, wie viele zus?tzliche Zeichen die String über das empfohlene Minimum haben, und gew?hren Sie einen Bonus für jeden Charakter. Gew?hren Sie auch einen Bonus, wenn die Zeichenfolge eine Kombination aus Gro?buchstaben, Zahlen und Symbolen oder allen drei enth?lt. Gew?hren Sie einen Bonus für die Anwesenheit jeder von ihnen. Es wird nicht au?erordentlich komplex sein, aber es wird viele schlechte Passw?rter erfassen. Sie werden dies besser verstehen, sobald wir es in Code sehen. Beachten Sie das Eingabeelement mit einer ID von

div

Element mit einer ID von Div

Element mit einer ID von Div

zu Message

enth?lt eine Nachricht über Strafen. Wir haben es fett und rot gemacht. erforderliche Funktionalit?t. Beachten Sie, dass wir JQuery umfassend nutzen. Fühlen Sie sich frei, falls erforderlich mit Googles CDN zu verlinken. Da es sich um eine Demo und kein Produktionscode handelt, habe ich beschlossen, die Variablen als global zu deklarieren und über die Helfermethoden zuzugreifen, anstatt sie intern zu deklarieren und an die Funktionen weiterzugeben.

Wir haben drei Konstanten. Das erste, das als Eingabe -Element und die Num

bezeichnet wird, enth?lt die Anzahl der zus?tzlichen Zeichen, Gro?buchstaben, Zahlen und Symbole. Wir tun dasselbe für das zweite Objekt, das als Num

-Objekt bezeichnet wird, die Anzahl der Zeichen, w?hrend die Funktion checkval
<div id="container"><br><br>  <h1>A simple password strength checker</h1><br><br>  <p>Type in your password to get visual feedback regarding the strength of your password.</p><br>  <p>I assure you, I am not stealing your passwords. The form doesn't not submit. You can look through the source if you are suspicious. :)</p><br><br>  <div class="block"><br>    <input id="password" /><br>    <div id="complexity" class="default">Enter a random value</div><br>  </div><br><br>  <div class="block"><br>    <div id="results" class="default">Breakdown of points</div><br>    <div id="details"></div><br>    <p class="message"></p><br>  </div><br><br></div><br>
aufgerufen wird, wenn es ein Passwort -Input -Element gibt. Wir erhalten zuerst das vom Benutzer eingegebene Kennwort und machen dann eine variable Initialisierung in der Funktion outputResult ()

, die die Berechnung der berechneten Berechnungen erfasst. Wir werden sp?ter sehen, wie es funktioniert. Wenn Sie in regul?ren Ausdrücken neu sind, schlage ich vor, dass Sie den gro?en Artikel von Vasili über regelm??ige Ausdrücke lesen. Dies gibt uns die überschüssige Anzahl von Charakteren, mit denen wir herumspielen k?nnen.

Wir überprüfen dann, ob die Zeichenfolge Gro?buchstaben, Zahlen und Symbole enth?lt. Wenn ja, gew?hren Sie einen Bonus. Wir prüfen auch, ob es Kombinationen von zwei von ihnen enth?lt, und gew?hren einen kleineren Bonus, wenn ja. Wir überprüfen dies mit einem regul?ren Ausdruck und bestrafen, wenn ja, das Kennwort für diese Praxis. Wir fügen die Basisbewertung dem Produkt der Anzahl der überschüssigen Zeichen und dessen Multiplikator hinzu. Wir tun dasselbe für Gro?buchstaben, Zahlen und Symbole. Wenn wir dann einen Bonus für Kombinationen hinzufügen, fügen wir Strafen hinzu, wenn die Zeichenfolge flach ist. Hier sind alle Zust?nde.

Wir werden hier zwei Funktionen definieren. Die Hauptfunktion namens Div

, die zu entfernenden Klassen und die zugegebenen Klassen. Die Helferfunktion, die als Standard -

-Klassel bezeichnet wird, um ihre Hintergrundfarbe wieder in ihr ursprüngliches Schwarz zu ?ndern. Fühlen Sie sich frei, die Basiswerte für jede Bewertung zu ?ndern. Ich habe gerade unwissenschaftliche Werte eingegeben, um die Demo in Gang zu bringen. Lassen Sie mich erkl?ren. Ich wei?, dass es tr?ge wird, wenn sich die Anzahl dieser Felder summiert, aber auf jedes Element zugreifen und dann ihren Wert für eine winzige Demo zu aktualisieren, schien eher kontraproduktiv zu sein. Laufen Sie also hier mit mir. Jeder Wert erh?lt eine Init ()

-Funktion ist nicht nur für die Anfangswertzuweisung nützlich. Es kümmert sich tats?chlich um das Zurücksetzen der Punktzahl und der Strafwerte nach jeder analyzestring ()

-Funktion, und Sie werden gut gehen k?nnen.
<div id="container"><br><br>  <h1>A simple password strength checker</h1><br><br>  <p>Type in your password to get visual feedback regarding the strength of your password.</p><br>  <p>I assure you, I am not stealing your passwords. The form doesn't not submit. You can look through the source if you are suspicious. :)</p><br><br>  <div class="block"><br>    <input id="password" /><br>    <div id="complexity" class="default">Enter a random value</div><br>  </div><br><br>  <div class="block"><br>    <div id="results" class="default">Breakdown of points</div><br>    <div id="details"></div><br>    <p class="message"></p><br>  </div><br><br></div><br>
<div id="container"><br><br>  <h1>A simple password strength checker</h1><br><br>  <p>Type in your password to get visual feedback regarding the strength of your password.</p><br>  <p>I assure you, I am not stealing your passwords. The form doesn't not submit. You can look through the source if you are suspicious. :)</p><br><br>  <div class="block"><br>    <input id="password" /><br>    <div id="complexity" class="default">Enter a random value</div><br>  </div><br><br>  <div class="block"><br>    <div id="results" class="default">Breakdown of points</div><br>    <div id="details"></div><br>    <p class="message"></p><br>  </div><br><br></div><br>

Mal sehen, was hier vor sich geht. Wir beginnen damit, unser gesamtes Passwort in Kleinbuchstaben zu konvertieren. Danach konvertieren wir es in eine Gr??e Eigenschaft, um die Anzahl der eindeutigen Zeichen zu erhalten. Wenn die Anzahl der eindeutigen Zeichen kleiner oder gleich 3 betr?gt, setzen wir den Wert für die Funktion Analyzestring () , um die Wiederholungsmuster zu überprüfen. Dies wird auf Regex beruhen und prüfen, ob eine Sequenz von 3 oder mehr alphanumerischen Zeichen im Kennwort wiederholt wird. Charaktere.

Im obigen Bild k?nnen Sie sehen, dass wir das Problem der Wiederholung von Zeichensequenzen erfolgreich angepasst haben. Ich habe jedoch ein Beispiel für eine weitere Einschr?nkung des Kennwortst?rkeprüfers gegeben.? Sie k?nnen sehen, dass

pa $$ w0rd $
.default {<br>  background-color: black;<br>}<br>.weak {<br>  background-color: #C62828;<br>}<br>.strong {<br>  background-color: #FF8F00;<br>}<br>.stronger {<br>  background-color: #1976D2;<br>}<br>.strongest {<br>  background-color: #388E3C;<br>}<br><br>span.value {<br>  font-weight: bold;<br>  float: right;<br>}<br><br>p.message {<br>  color: red;<br>  font-weight: bold;<br>}<br>
als sicheres Passwort auftaucht, w?hrend es tats?chlich ziemlich bald unterbrochen wird. Dies liegt an der Einfachheit unseres Algorithmus hier. Wir prüfen nicht nach Charakterersatz oder g?ngigen Kennw?rtern oder Mustern. Solche Dinge zu tun, würde die Schwierigkeit dieses Tutorials erh?hen und gleichzeitig seine Ann?herung verringern. Beide, die ich für dieses spezielle Aufschreiben nicht wollte. Auch hier wollte ich beide diesmal beide vermeiden. Hoffentlich haben Sie dieses Tutorial interessant gefunden, und das war für Sie nützlich. Fühlen Sie sich frei, diesen Code an anderer Stelle in Ihren Projekten wiederzuverwenden!

test()

Dieser Beitrag wurde mit Beitr?gen von Monty Shokeen aktualisiert. Monty ist ein Full-Stack-Entwickler, der auch gerne Tutorials schreibt und sich über neue JavaScript-Bibliotheken informiert. Erstellen Sie einen einfachen Kennwortst?rkeprüfer

Das obige ist der detaillierte Inhalt vonErstellen Sie einen einfachen Kennwortst?rkeprüfer. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Erkl?rung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Hei?e KI -Werkzeuge

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Clothoff.io

Clothoff.io

KI-Kleiderentferner

Video Face Swap

Video Face Swap

Tauschen Sie Gesichter in jedem Video mühelos mit unserem v?llig kostenlosen KI-Gesichtstausch-Tool aus!

Hei?e Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Wie funktioniert die Müllsammlung in JavaScript? Wie funktioniert die Müllsammlung in JavaScript? Jul 04, 2025 am 12:42 AM

Der Müllsammlung von JavaScript verwaltet den Speicher automatisch über einen Tag-Clearing-Algorithmus, um das Risiko eines Speicherlecks zu verringern. Der Motor durchquert und markiert das aktive Objekt aus dem Wurzelobjekt, und nicht markiert wird als Müll behandelt und gel?scht. Wenn das Objekt beispielsweise nicht mehr referenziert wird (z. B. die Variable nach NULL), wird es in der n?chsten Runde des Recyclings freigegeben. Zu den h?ufigen Ursachen für Speicherlecks geh?ren: ① Unger?te Timer oder Event -H?rer; ② Verweise auf externe Variablen in Schlie?ungen; ③ Globale Variablen halten weiterhin eine gro?e Datenmenge. Der V8 -Motor optimiert die Recyclingeffizienz durch Strategien wie Recycling von Generationen, inkrementelle Markierung, paralleles/gleichzeitiges Recycling und verkürzt die Hauptblockierungszeit. W?hrend der Entwicklung sollten unn?tige globale Referenzen vermieden und Objektverb?nde umgehend dekoriert werden, um die Leistung und Stabilit?t zu verbessern.

Wie stelle ich eine HTTP -Anforderung in node.js? Wie stelle ich eine HTTP -Anforderung in node.js? Jul 13, 2025 am 02:18 AM

Es gibt drei g?ngige M?glichkeiten, HTTP-Anforderungen in Node.js zu initiieren: Verwenden Sie integrierte Module, Axios und Knotenfetch. 1. Verwenden Sie das integrierte HTTP/HTTPS-Modul ohne Abh?ngigkeiten, das für grundlegende Szenarien geeignet ist, jedoch eine manuelle Verarbeitung von Datengen?hten und Fehlerüberwachung erfordert, z. 2.Axios ist eine auf Versprechen basierende Bibliothek von Drittanbietern. Es verfügt über eine kurze Syntax und leistungsstarke Funktionen, unterstützt Async/Auseait, automatische JSON -Konvertierung, Interceptor usw. Es wird empfohlen, asynchrone Anforderungsvorg?nge zu vereinfachen. 3.Node-Fetch bietet einen Stil ?hnlich dem Browser-Abruf, basierend auf Versprechen und einfacher Syntax

JavaScript -Datentypen: Primitive VS -Referenz JavaScript -Datentypen: Primitive VS -Referenz Jul 13, 2025 am 02:43 AM

JavaScript -Datentypen sind in primitive Typen und Referenztypen unterteilt. Zu den primitiven Typen geh?ren String, Anzahl, Boolesche, Null, undefiniertes und Symbol. Die Werte sind unver?nderlich und Kopien werden bei der Zuweisung von Werten kopiert, sodass sie sich nicht gegenseitig beeinflussen. Referenztypen wie Objekte, Arrays und Funktionen speichern Speicheradressen, und Variablen, die auf dasselbe Objekt zeigen, wirkt sich gegenseitig aus. Typeof und Instanz k?nnen verwendet werden, um die Typen zu bestimmen, aber auf die historischen Probleme der TypeOfnull zu achten. Das Verst?ndnis dieser beiden Arten von Unterschieden kann dazu beitragen, einen stabileren und zuverl?ssigeren Code zu schreiben.

JavaScript Time Object, jemand erstellt eine EACTEXE, schnellere Website auf Google Chrome usw. JavaScript Time Object, jemand erstellt eine EACTEXE, schnellere Website auf Google Chrome usw. Jul 08, 2025 pm 02:27 PM

Hallo, JavaScript -Entwickler! Willkommen in den JavaScript -Nachrichten dieser Woche! Diese Woche konzentrieren wir uns auf: Oracas Markenstreit mit Deno, neue JavaScript -Zeitobjekte werden von Browsern, Google Chrome -Updates und einigen leistungsstarken Entwickler -Tools unterstützt. Fangen wir an! Der Markenstreit von Oracle mit dem Versuch von Deno Oracle, ein "JavaScript" -Marke zu registrieren, hat Kontroversen verursacht. Ryan Dahl, der Sch?pfer von Node.js und Deno, hat eine Petition zur Absage der Marke eingereicht, und er glaubt, dass JavaScript ein offener Standard ist und nicht von Oracle verwendet werden sollte

React vs Angular vs Vue: Welches JS -Framework ist am besten? React vs Angular vs Vue: Welches JS -Framework ist am besten? Jul 05, 2025 am 02:24 AM

Welches JavaScript -Framework ist die beste Wahl? Die Antwort besteht darin, die am besten geeigneten nach Ihren Bedürfnissen zu w?hlen. 1.React ist flexibel und kostenlos und für mittlere und gro?e Projekte geeignet, für die hohe Anpassungs- und Teamarchitekturf?higkeiten erforderlich sind. 2. Angular bietet vollst?ndige L?sungen, die für Anwendungen auf Unternehmensebene und langfristige Wartung geeignet sind. 3.. Vue ist einfach zu bedienen, geeignet für kleine und mittlere Projekte oder schnelle Entwicklung. Unabh?ngig davon, ob es einen technologischen Stack, die Teamgr??e, der Projektlebenszyklus gibt und ob SSR erforderlich ist, sind auch wichtige Faktoren für die Auswahl eines Rahmens. Kurz gesagt, es gibt keinen absolut besten Rahmen, die beste Wahl ist die, die Ihren Bedürfnissen entspricht.

Das Verst?ndnis sofort auf Funktionsausdrücke (IIFE) in JavaScript aufzurufen Das Verst?ndnis sofort auf Funktionsausdrücke (IIFE) in JavaScript aufzurufen Jul 04, 2025 am 02:42 AM

IIFE (SofortinvokedFunctionExpression) ist ein Funktionsausdruck, der unmittelbar nach der Definition ausgeführt wird und zum Isolieren von Variablen und zur Vermeidung des kontaminierenden globalen Bereichs verwendet wird. Es wird aufgerufen, indem die Funktion in Klammern umwickelt ist, um sie zu einem Ausdruck und einem Paar von Klammern zu machen, gefolgt von ihr, wie z. B. (function () {/code/}) ();. Zu den Kernverwendungen geh?ren: 1.. Variable Konflikte vermeiden und die Duplikation der Benennung zwischen mehreren Skripten verhindern; 2. Erstellen Sie einen privaten Bereich, um die internen Variablen unsichtbar zu machen. 3.. Modularer Code, um die Initialisierung zu erleichtern, ohne zu viele Variablen freizulegen. Zu den allgemeinen Schreibmethoden geh?ren Versionen, die mit Parametern und Versionen der ES6 -Pfeilfunktion übergeben wurden. Beachten Sie jedoch, dass Ausdrücke und Krawatten verwendet werden müssen.

Handlingversprechen: Verkettung, Fehlerbehandlung und Versprechenkombinatoren in JavaScript Handlingversprechen: Verkettung, Fehlerbehandlung und Versprechenkombinatoren in JavaScript Jul 08, 2025 am 02:40 AM

Versprechen ist der Kernmechanismus für den Umgang mit asynchronen Operationen in JavaScript. Das Verst?ndnis von Kettenanrufen, Fehlerbehebung und Kombination ist der Schlüssel zum Beherrschen ihrer Anwendungen. 1. Der Kettenaufruf gibt ein neues Versprechen durch .then () zurück, um asynchrone Prozessverkampferung zu realisieren. Jeder. Dann () erh?lt das vorherige Ergebnis und kann einen Wert oder ein Versprechen zurückgeben; 2. Die Fehlerbehandlung sollte .Catch () verwenden, um Ausnahmen zu fangen, um stille Ausf?lle zu vermeiden, und den Standardwert im Fang zurückgeben, um den Prozess fortzusetzen. 3. Combinatoren wie Promise.All () (erfolgreich erfolgreich erfolgreich nach allen Erfolg), Versprechen.Race () (Die erste Fertigstellung wird zurückgegeben) und Versprechen.Allsettled () (Warten auf alle Fertigstellungen)

Was ist die Cache -API und wie wird sie bei Dienstangestellten verwendet? Was ist die Cache -API und wie wird sie bei Dienstangestellten verwendet? Jul 08, 2025 am 02:43 AM

Cacheapi ist ein Tool, das der Browser zur Cache -Netzwerkanfragen bereitstellt, das h?ufig in Verbindung mit dem Servicearbeiter verwendet wird, um die Leistung der Website und die Offline -Erfahrung zu verbessern. 1. Es erm?glicht Entwicklern, Ressourcen wie Skripte, Stilbl?tter, Bilder usw. Zu speichern; 2. Es kann die Cache -Antworten entsprechend den Anfragen übereinstimmen. 3. Es unterstützt das L?schen bestimmter Caches oder das L?schen des gesamten Cache. 4.. Es kann Cache -Priorit?ts- oder Netzwerkpriorit?tsstrategien durch Servicearbeiter implementieren, die sich auf Fetch -Ereignisse anh?ren. 5. Es wird h?ufig für die Offline -Unterstützung verwendet, die wiederholte Zugriffsgeschwindigkeit, die Vorspannungs -Schlüsselressourcen und den Inhalt des Hintergrundaktualisierungss beschleunigen. 6. Wenn Sie es verwenden, müssen Sie auf die Cache -Versionskontrolle, Speicherbeschr?nkungen und den Unterschied zum HTTP -Caching -Mechanismus achten.

See all articles