Maison >interface Web >js tutoriel >Expansion et réparation des chaînes dans la conception du framework javascript pour la lecture des compétences notes_javascript

Expansion et réparation des chaînes dans la conception du framework javascript pour la lecture des compétences notes_javascript

WBOY
WBOYoriginal
2016-05-16 16:29:391416parcourir

Méthode 1.repeat : Répétez une chaîne n fois. Par exemple : répéter("chaojidan",2) -> chaojidanchaojidan

Méthode 1 :

Copier le code Le code est le suivant :

fonction répéter(str,n){
return Array.prototype.join.call({length:n 1},str
); //Exécutez la méthode join dans le contexte du tableau de classes {length:n 1} et transmettez str. Autrement dit, utilisez str pour séparer les options du tableau de classes. Le tableau de classes est vide, il y a donc n str séparés par n 1 "", et le résultat est n connexions str.
>

Méthode 2 :

Copier le code Le code est le suivant :

fonction répéter(str,n){
var s = str ,total = "";
​while(n>0){                                                            //Supposons que n vaut 5, après n%2, il est égal à 1, donc total = str.s=strstr. n=2. La deuxième boucle : s=strstrstrstr, n=1. La troisième boucle total = strstrstrstrstr, break, saute hors de la boucle et renvoie total, qui se trouve être la chaîne où str est répétée 5 fois
  if(n%2 ==1){   
   Total =s; //Voici 2 élevé à la puissance 0, qui est 1. Tous les entiers positifs peuvent être combinés en utilisant 1,2,4,8.... Par exemple : 3=1 2,5=1 4,7=1 2 4.
  }
  if(n==1) break;
​​ s =s; //Ce qui est utilisé ici, c'est la puissance de 2, 2, 4, 8....
  n = n>>1;
>
retourner le total ;
>

2. Obtenez la longueur de tous les octets de la chaîne : str.charCodeAt(i) >255. Ajoutez simplement la longueur de str une fois et tout ira bien.

3. Convertir le style de casse chameau : str.replace(/[-_][^-_]/g,function(match){return match.charAt(1).toUpperCase();})

//-_In [], il n'est pas nécessaire de l'utiliser, et ^ in [] signifie le contraire, c'est-à-dire que lorsque -a ou _a est rencontré, il sera remplacé par A (match est une correspondance régulière chaîne _a, puis prends a et mets-le en majuscule)

4. Convertir en style de soulignement : str.replace(/([a-zd])([A-Z])/g,'$1_$2').replace(/-/g,'_').toLowerCase ();

//Le premier remplacement correspond à la chaîne de cA ou 4A, puis la remplace par c_A ou 4_A. $1 représente la première sous-expression. Le deuxième remplacement consiste à utiliser _ pour remplacer -. Puisque - n'est pas dans [], il doit être ajouté.

5. Supprimez la balise html dans la chaîne : str.replace(/<[^>] >/g,''), ce qui supprimera la balise script, mais ne supprimera pas le script js dans le scénario

6. Supprimez la balise de script et supprimez le script js à l'intérieur : str.replace(/]*>(Ss)*?)/img,'')

/ Doit être utilisé pour éviter de s'échapper.

//(Ss)*?) Match le moins possible, matching non gourmand. Par exemple : <script>aaa</script>dddd<script>bbbb</script> correspondra d'abord à <script>aaa</script>, puis <script>bbbb</script>, sinon l'ajout le fera. sera une correspondance gourmande, et correspondra à tous les <script>aaa</script>dddd<script>bbbb</script>, même la chaîne dddd sera supprimée.

7. Échappez la chaîne via HTML pour obtenir un contenu adapté à l'affichage sur la page.

str.replace(/&/g,'&').replace(//g,'>').replace(/"/ g,'"').replace(/'/g,''');

8. Remplacez les caractères d'entité html de la chaîne par les caractères correspondants :

Le contraire de 7, juste un autre replace(/([d] );/g,function($0,$1){ return String.fromCharCode(parseInt($1,10)) }) //$1 est La première correspondance de sous-expression.

9.trim:str.replace(/^s | s $/g,'') , IE ou les premiers navigateurs standards ne répertorient pas beaucoup de caractères vides comme s, il y aura donc des bugs. Cependant, pourquoi insister sur la compatibilité avec les navigateurs obsolètes ?

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn