<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                合規國際互聯網加速 OSASE為企業客戶提供高速穩定SD-WAN國際加速解決方案。 廣告
                > ES6加強了對Unicode的支持,并擴展了字符串對象 ### 字符的Unicode表示法 JavaScript允許采用 `\uxxxx` 形式表示一個字符,其中 xxxx 表示字符的 Unicode 碼點 ```js "\u0061" // 'a' ``` 但這種表示法只限于碼點在 `\u0000` ~ `\uFFFF`之間的字符,超出這個范圍的字符就必須用2個雙字節的形式表達。ES6對這一點做出了改進,只要把碼點放入大括號,就能正確解讀該字符 ```js "\u{20BB7}" ``` ### codePointAt() ES6提供了 `codePointAt` 方法,能正確處理4個字符串存儲的字符,返回一個字符的碼點 ```js let s = '中' s.codePointAt() // 20013 ``` `codePointAt` 方法返回的是碼點的十進制,如果想要二進制,可以使用 `toString` 轉換一下 ```js s.codePointAt().toString(16) // "4e2d" "\u4e2d" // '中' ``` ### String.fromCodePoint() ES5提供了 `String.fromCharCode` 方法,用于從碼點返回對應字符,但這個方法不能識別32位的UTF-16字符。ES6提供了 `String.fromCodePoint` 方法以彌補這個不足。 ```js String.fromCodePoint(0x4e2d) // '中' ``` ### 字符串的遍歷器接口 ES6為字符串添加了遍歷器接口,使得字符串可以由 `for...of` 循環遍歷。 ```js for (let codePoint of 'foo') { console.log(codePint) } // 'f' // 'o' // 'o' ``` ### at() ES5提供了字符串對象的 `charAt` 方法,返回字符串給定位置的字符。該方法不能識別碼點大于 `0xFFFF` 的字符。 目前有一個提案是增加字符串實例的 `at` 方法,可以識別碼點大于 `0xFFFF` 的字符。 ### normalize() ES6為字符串提供了 `normalize` 方法,用來將字符的不同表示方法統一為同樣的形式,這被稱為Unicode正規化。 ### includes()、startsWith()、endsWith() ES5中,只有 `indexOf` 方法用來確定一個字符串是否包含在另一個字符串中,ES6提供了3個方法: - `includes()` 返回布爾值,表示是否找到了參數字符串 - `startsWith()` 返回布爾值,表示參數字符串是否在源字符串的頭部 - `endsWith()` 返回布爾值,表示參數字符串是否在源字符串的尾部 ```js let s = 'Hello world!' s.startsWith('Hello') // true s.endsWith('!') // true s.includes('o') // true ``` 該方法還支持第二個參數,表示開始搜索的位置 ```js let s = 'Hello World!' s.startsWith('world', 6) // true s.endsWith('Hello', 5) // true s.includes('Hello', 6) // false ``` ### repeat() `repeat` 方法返回一個新字符串,表示將源字符串重復 n 次 ```js 'x'.repeat(3) // xxx 'hello'.repeat(2) // hellohello 'na'.repeat(0) // '' ``` ### padStart()、padEnd() ES2017引入了字符串補全長度的功能,如果某個字符串不夠指定長度,會在頭部或尾部補全。 ```js 'x'.padStart(5, 'ab') // 'ababx' 'x'.padStart(4, 'ab') // 'abax' 'x'.padEnd(5, 'ab') // xabab 'x'.padEnd(4, 'ab') // xaba ``` ### 模板字符串 ES6引入了模板字符串來解決定義過長字符串的問題。模板字符串是增強版的字符串,用反引號(`)標識,它可以當做普通字符串使用,也可以用來定義多行字符串,或者在字符串中插入變量。 ```js // 普通字符串 `In JavaScript '\n' is a line-feed` // 多行字符串 `In JavaScript this is not legal.` console.log(`string text line 1 string text line 2`) // 字符串中插入變量 let name = 'Bob', time = 'today' `Hello ${name}, how are you ${time}` ``` **注意**:如果使用模板字符串表示多行字符串,所有的空格和縮進都會被保留在輸出中 可以用是 `trim()` 方法消除換行,在模板字符串中嵌入變量,需要將變量名寫在 `${}` 中。 模板字符串中還可以調用函數 ```js function fn () { return 'hello world' } `foo ${ fn() } bar` // foo hello world bar ``` ### 標簽模板 模板字符串可以緊跟在一個函數名后面,該函數將被調用來處理這個模板字符串。這被稱為 `標簽模板` 功能 ```js alert`123` // alert(123) ``` ### String.raw() ES6為原生String對象提供了 `raw` 方法,該方法用來充當模板字符串的處理函數,返回一個反斜線都被轉義的字符串,對應于替換變量后的模板字符串 ```js String.raw`Hi\n${2+3}` // 'Hi\\n5' ```
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看