> 웹 프론트엔드 > JS 튜토리얼 > Notes_javascript 기술을 읽기 위한 javascript 프레임워크 디자인의 문자열 확장 및 복구

Notes_javascript 기술을 읽기 위한 javascript 프레임워크 디자인의 문자열 확장 및 복구

WBOY
풀어 주다: 2016-05-16 16:29:39
원래의
1405명이 탐색했습니다.

1.repeat 방법: 문자열을 n번 반복합니다. 예를 들면 다음과 같습니다.repeat("chaojidan",2) ->

방법 1:

코드 복사 코드는 다음과 같습니다.
함수 반복(str,n){
return Array.prototype.join.call({length:n 1},str)
//클래스 배열 {length:n 1}의 컨텍스트에서 조인 메서드를 실행하고 str을 전달합니다. 즉, 클래스 배열의 옵션을 구분하기 위해 str을 사용합니다. 클래스 배열은 비어 있으므로 n 1 ""로 구분된 n str이 있고 결과는 n str 연결입니다.
}

방법 2:

코드 복사 코드는 다음과 같습니다.
함수 반복(str,n){
var s = str ,total = "";
​동안(n>0){                                                               //n이 5라고 가정하고 n%2 이후에는 1이므로 total = str.s=strstr. n=2. 두 번째 루프: s=strstrstrstr, n=1. 세 번째 루프 total = strstrstrstrstr, break, 루프에서 빠져나와 총계를 반환합니다. 이는 str이 5번 반복되는 문자열입니다.
  if(n%2 ==1){   
   Total =s; //여기서 2의 0승은 1입니다. 모든 양의 정수는 1,2,4,8을 사용하여 결합할 수 있습니다.... 예: 3=1 2,5=1 4,7=1 2 4.
  }
  if(n==1) break;
​​ s =s; //여기서 사용되는 것은 2, 2, 4, 8의 거듭제곱입니다....
  n = n>>1;
}
총 반환 ;
}


2. 문자열의 모든 바이트 길이를 가져옵니다. str.charCodeAt(i) >255. str의 길이를 한 번만 추가하면 됩니다.

3. 카멜 케이스 스타일 변환: str.replace(/[-_][^-_]/g,function(match){return match.charAt(1).toUpperCase();})

//-_In []에서는 사용할 필요가 없으며 ^ in []는 그 반대를 의미합니다. 즉, -a 또는 _a가 만나면 A로 대체됩니다(일치는 일반 매칭입니다 문자열 _a를 입력하고 a를 대문자로 입력하세요.)

4. 밑줄 스타일로 변환: str.replace(/([a-zd])([A-Z])/g,'$1_$2').replace(/-/g,'_').toLowerCase ();

//첫 번째 바꾸기는 cA 또는 4A 문자열과 일치하고 그 다음 c_A 또는 4_A로 바꿉니다. $1은 첫 번째 하위 표현식을 나타냅니다. 두 번째 교체는 -를 교체하기 위해 _를 사용하는 것입니다. []에는 -가 없으므로 추가해야 합니다.

5. 문자열에서 html 태그를 제거합니다. str.replace(/<[^>] >/g,''). 이렇게 하면 스크립트 태그가 제거되지만 js 스크립트는 제거되지 않습니다.

6. 스크립트 태그를 제거하고 내부의 js 스크립트를 제거합니다: str.replace(/]*>(Ss)*?)/img,'')

/ 탈출 방지를 위해 사용해야 합니다.

//(Ss)*?) 최대한 적게 매칭하고, 욕심내지 않고 매칭합니다. 예를 들어, <script>aaa</script>dddd<script>bbbb</script>는 <script>aaa</script>와 일치하고 그 다음에는 <script>bbbb</script>를 추가합니다. 탐욕스러운 일치가 되어 모든 <script>aaa</script>dddd<script>bbbb</script>와 일치하며 문자열 dddd도 제거됩니다.

7. 페이지에 표시하기에 적합한 콘텐츠를 얻으려면 html을 통해 문자열을 이스케이프하세요.

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

8. 문자열의 html 엔터티 문자를 해당 문자로 바꿉니다:

7의 반대, 하나만 더 교체하세요.(/([d] );/g,function($0,$1){ return String.fromCharCode(parseInt($1,10)) }) //$1은 첫 번째 하위 표현식이 일치합니다.

9.trim:str.replace(/^s | s $/g,'') , IE 또는 초기 표준 브라우저는 s로 공백 문자를 많이 나열하지 않으므로 버그가 있습니다. 그런데 왜 구식 브라우저와 호환되어야 한다고 주장합니까?

관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿