ES6 學習(二)[多行字串``,重複字串repeat,原始字串raw]
1\ 我們平時定義字串一般用引號(單引號,雙引號),這些定義的單行字串內部不能出現特殊字元(換行符等等),我們可以通過轉義符號代表這些特殊字元。
引號巢狀:單引號與雙引號可以相互巢狀,單引號與單引號,雙引號與雙引號不能直接巢狀,字串內部不能使用變數。。。。
為了解決上述問題,ES6提出來多行字串概念,將字串寫在``內,就是一個多行字串。
在多行字串中,可以使用任何字元(除了`),想在多行字串中使用變數要使用插值語法${變數}。該變數要在當前作用域下訪問到。
插值語法提供了一個js環境,因此可以使用表示式。
插值語法如下: ejs: <%=key%> MVC: <%key%> Backbone|underscore:<%=key%>
vue: {{key}} angular:{{key}} less:@{key} sass:#{$key}
stylus:{key} react:{key} ES6:${key}
let html = '';
for (let i = 0; i < data.length; i++) {
// data[i] 表示每一個成員
html += `<li>
<a href="#/detail/${data[i].id}">
<h3 class="${'color' + i}">${data[i].title}</h3>
<p>${data[i].description}</p>
<img src="${'img/ad/' + data[i].url}" alt="">
</a>
</li>`}
html = `<ul>${html}</ul>`;
2\重複字串
repeat: 重複引數次字串
引數表示重複的次數
repeat 方法返回一個新字串,表示將原字串重複n次。
3\原始字串
字串擴充套件了一個靜態方法 raw,用來獲取原始字串,內部的轉義字元不會轉義(怎麼寫,怎麼輸出)
方法的特殊之處是引數用``定義(不需要用引數集合())
console.log(String.raw`這是一個神奇的\n網站\n愛創課堂`)