ES6:string.raw淺析

當前正學習ES6 ,遇到string.raw費心思,現將試驗後的結果整理以下:數組

網上得來的試驗:函數

  1. 語法學習

    String.raw`templateStr`; spa

    String.raw(obj, ...substitutions);rest

  2.  參數

    templateStrcode

    必需。模板字符串。對象

    objblog

    必需。一個使用對象文本表示法指定的格式正確的對象,例如 { raw: 「value」 }。字符串

    ...substitutionsstring

    可選。一個數組(rest 參數),包含一個或多個替換值。

  3. 備註

    String.raw 函數旨在與模板字符串一塊兒使用。原始字符串將包含存在於字符串中的任何轉義字符和反斜槓。

    若是 obj 不是格式正確的對象,則會引起錯誤。

     

    經試驗的實例以下:

一、

String.raw是處理模板字符串的一個基本方法。

String.raw({raw: 'test'}, 1,2,3,4); //t1e2s3t 等同於String.raw({raw: ['t','e','s','t']}, 1,2,3,4)

執行原理以下:

String.raw = function (strings, ...values) { var output = ""; for (var index = 0; index < strings.length; index++) { output += strings.raw[index] + values[index]; } output +=strings.raw[index] return output;}

能夠用在字符串或數組的插入組成新字符串。

二、

String.raw 函數  

返回模板字符串的原始字符串形式

console.log(String.raw `foo\n${ 42 }bar` === "foo\\n42bar")//true
相關文章
相關標籤/搜索