ES6-字符串-模板字符串(複習+學習)
昨天學習了字符串對象和字符串的表示,就是利用utf-8等不同的編碼方式,還有許多的對象方法,都是處理字符串的方法,挺方便的,今天我學習了一下字符串模板,這裡記錄i一下學習的筆記,當然,今天學習了部分內容,如果筆記有沒涉及到的,可以再自行學習,話不多說,這次筆記分為兩部分:
1.傳統的字符串輸出
2.字符串模板
正文開始:
1.傳統的字符串輸出
1 //傳統的字符串輸出模板就是字符串的連接問題,無非就是字符串與字符串之間用+號連接,然後其中還有一部分就是轉義字符,必須由轉義字符控制模板 2 let a = 1; 3 'this is' +a+'\nabcd ' //該句話就表示有個a的值和一個換行符號在其中控制着該輸出的字符串 4 //結果: 5 // this is 1 6 //abc
2.字符串模板
1 //看完傳統的字符串的輸出模板,你會發現寫個變量還要加加加,還需要轉義字符來控制,想當的煩惱,而字符串模板的引入就是為了解決這個問題 2 //1.字符串模板是利用 ` 來定義的,可以定義多行字符,當然也可以鑲嵌變量,模板可以換行和空格,還有縮進。 3 //(1)鑲嵌變量${變量} 4 var name = "andy"; 5 console.log(`my name is ${name}`); // 輸出的就是my name is andy 鑲嵌變量 6 //(2)模板可換行 7 console.log('one line \n two line') // 輸出可想而知,傳統字符串輸出 8 console.log(`one line 9 two line` ) // 與上面傳統輸出一樣,但是寫法不一樣 10 //(3)模板字符串裏面想用`` 11 var a = `you \` moban\`zifuchuan` //you `moban` zifuchuan; 12 //(4)不想用換行可以用trim方法消除 13 ${'.ac'}/html(` 14 <li>one<\li> 15 <li>two<\li> 16 `.trim()); 17 //(5)大括號裏面可以放置對象屬性(調用對象的時候,默認調用對象的toString方法)或者運算式,或者js的表達式 18 let x =1; 19 let y = 2; 20 21 `${x} + ${y} = ${x+y}`; /1+2 =3; 22 //(6)模板字符串中可以調用函數 23 function f(){ 24 return "hellow"; 25 } 26 27 `foo ${f()} bar`; 28 //(7)模板字符串里大括號裏面還是字符串仍舊輸出字符串 29 //(8)模板字符串中的變量或者函數沒定義仍舊會報錯 30 //(9)模板字符串可以嵌套(無非就是模板裏面套模板一樣一樣的)