1. METHE METHODE: Wiederholen Sie einen String n -mal. Zum Beispiel: Wiederholung ("Chaojidan", 2) -> Chaochajidanchaojidan
Methode 1:
Die Codekopie lautet wie folgt:
Funktion repeat (str, n) {
return array.prototype.join.call ({Länge: n+1}, str);
// Führen Sie die Join -Methode im Kontext des Klassenarrays {Länge: n+1} aus und geben Sie in str. Das heißt, die Option, STR zu verwenden, um Klassenarrays zu trennen. Das Klassenarray ist leer, daher gibt es n strs n+1 "" und das Ergebnis sind N -STR -Verbindungen.
}
Methode 2:
Die Codekopie lautet wie folgt:
Funktion repeat (str, n) {
var s = str, Total = "";
while (n> 0) {
// Angenommen, N ist 5, nach n%2 ist es gleich 1, also total = str.s = str. n = 2. Die zweite Schleife: s = strstrstrstrstr, n = 1. Die dritte Schleife Total = strststrstrstrstr, brechen, aus der Schleife springen, insgesamt zurückkehren, nur die String, die STR 5 -mal wiederholt wurde
if (n%2 == 1) {
Gesamt + = S; // Hier ist die Leistung von 0 von 2, dh 1. Alle positiven Ganzzahlen können mit 1, 2, 4, 8 kombiniert werden. Zum Beispiel: 3 = 1+2,5 = 1+4,7 = 1+2+4.
}
if (n == 1) brechen;
s+= s; // Die Leistung von 2 wird hier verwendet, 2, 4, 8 ...
n = n >> 1;
}
Return Total;
}
2. Nehmen Sie die Länge aller Bytes der Saite: Str.Chodeat (i)> 255 und fügen Sie einmal die Länge von STR hinzu und es ist in Ordnung.
3.. Konvertieren Sie den Kamelstil: Str.Replace (/[-_] [^-_]/g, Funktion (Match) {return match.charat (1) .toUppercase ();})
// -_ in [] ist /ist nicht notwendig, und ^ in [] bedeutet inverse, dh bei der Begegnung -a oder _a wird es durch ein ersetzt (Übereinstimmung ist die reguläre passende Zeichenfolge _a, dann nehmen Sie a und nutzen Sie sie).
4. In den unterstrichenziellen Stil konvertieren: Str.Replace (/([Az/d]) ([Az])/g, '$ 1_ $ 2'). Ersetzen (//-/g, '_'). TolowerCase ();
// Das erste Ersatz übereinstimmt CA oder 4A -Zeichenfolge und ersetzt sie durch C_A oder 4_A. $ 1 repräsentiert die erste Unterexpression. Der zweite Ersatz ist die Verwendung von _Replace-. Da - nicht in [] ist, müssen Sie /.
5. Entfernen Sie das HTML -Tag in der Zeichenfolge: Str.Replace (/<[^>]+>/g, ''), das Skript -Tag wird entfernt, das JS -Skript im Skript wird jedoch nicht entfernt.
6. Entfernen Sie das Skript -Tag und entfernen Sie das JS -Skript in: Str.Replace (/<script [^>]*> (/s/s)*?) <// script>/img, '')
/ Erforderlich, um zu entkommen / zu verhindern.
// (/s/s)*?) So wenige Übereinstimmungen wie möglich, Nicht-Greedy-Matches. Zum Beispiel: <Script> aaa </script> dddd <script> bbbb </script> stimmt zuerst <Script> aaa </script> überein und dann mit <Script> bbbb </script> überein. Wenn es keine Ergänzung gibt, ist es ein gieriges Match. Alle <Script> aaa </script> werden übereinstimmen, und alle Hyphen -Zeichenfolgen werden entfernt.
7. Entkommen der Zeichenfolge durch HTML, um den Inhalt für die Anzeige auf der Seite geeignet zu erhalten.
Str.Replace (/&/g, '&'). Ersetzen (/</g, '<'). Ersetzen (// g, '>'). Ersetzen (/"/g, ''). Ersetzen (/'/g,' '');
8. Ändern Sie das HTML -Entitätszeichen der Zeichenfolge in das entsprechende Zeichen:
Im Gegensatz zu 7 gibt es nur einen weiteren Ersatz (/&#([/d]+);/g, Funktion ($ 0, $ 1) {return string.fromCharCode (ParseInt (1,10 $))}) // 1 ist das erste Unterexpressionsspiel.
9. Warum sollten Sie sich jedoch die Mühe machen, mit eliminierten Browsern kompatibel zu sein?