확장 문자열 : 루안 이풍 ES6 주 3 읽기

템플릿 문자열

(`) 반 따옴표로 확인 된. 이것은 통상의 문자열로 사용할 수 있고, 또한 현의 복수의 열을 정의하는 데 사용하거나 문자열 변수에 삽입 될 수있다.

// 일반 문자열은 
'자바 스크립트'\ N- '에서은 줄입니다 feed.` 

// 여러 줄 문자열 
`하여 자바 스크립트에서 다음은이가 IS 
 legal.`하지 

을 console.log를 (문자열 텍스트`라인 . 1 
문자열 텍스트 라인 2 '); 

// 에 포함 된 문자열 변수 
= "밥"를하자 이름, 시간 = "오늘" , 
`헬로 $ {이름}, 시간이 어떻게 당신에게 $ {}이다 `를?

내장 템플릿 문자열 변수는 변수 이름이 기록 될 필요 ${}로.

내부 중괄호 작동 될 수있는 임의의 자바 스크립트 표현하고, 오브젝트 속성에 대한 참조에 배치 될 수있다.

있도록 X = 1 ; 
Y는하자 = 2 ; 

'$ {} X + Y $ {} = {$ X + Y}`
 // "1 + 2 = 3" 

'$ {} X + Y * $ {2} = $ {X + Y * 2 }`
 / / "1 + 4 = 5" 

하자 OBJ = {X 1, Y 2 }; 
`$ {obj.x + obj.y}`
 // "3"

템플릿 문자열 가운데 함수를 호출 할 수 있습니다.

기능 FN () {
   반환 에 "Hello World" ; 
} 

`foo는 $ {FN ()} bar` 
// foo는 안녕하세요 바

심지어 중첩 된 템플릿 문자열.

당신이 필요할 때 실행되는 참조 템플릿 문자열 자체를해야하는 경우, 함수로 기록 될 수 있습니다.

하자 FUNC = (이름) =>`안녕하십니까, $ {이름}! `; 
FUNC ( '잭') // "안녕하세요 잭!"

라벨 템플릿

기능 템플릿 문자열, 그냥 위. 바로 함수 이름 뒤에, 기능이 템플릿 문자열을 처리하기 위해 호출 될 수 있습니다. 이것은 "라벨 템플릿"기능 (태그 템플릿)라고합니다.

alert`123 `
 // 상응하는 
(123) 경고

"라벨 템플릿"중요한 응용 프로그램은 악의적 인 내용을 입력하지 못하도록하는 HTML 문자열을 필터링하는 것입니다.

메시지 = 내버려 
  SaferHTML` <P> $ {보낸} 메시지를 보내 셨습니다 </ P>`.; 작동 SaferHTML (templateData)를 { 
  (S)가하자 templateData가 = [0 ];
  위한 (; 나는 <난에서 arguments.length ++ I = 1하자 {) 
    하게 ARG = 문자열 (인수 [I]); // 대체에 특수 문자를 탈출. 
    S = + arg.replace (/ 및 / g '및 A; " ) 
            .replace ( / </ g"및 LT; " ) 
            .replace ( /> / g"한다 " ); // 템플릿에 특수 문자를 탈출하지 마십시오. 
    S = + templateData [I];



    

    
  에스; 
}

레이블 템플릿의 다른 응용 프로그램, 다중 언어 변환 (국제화 과정)입니다.

 

추천

출처www.cnblogs.com/liangtao999/p/11745909.html