正規表示式實現ES6字串模板功能

2021-08-27 08:29:08 字數 585 閱讀 3877

早上在地鐵裡,看到一篇文章說是用正則實現es6字串模板,沒看細節,好奇心來了,我也實現一下。

實現將字串"我叫$,愛人是$,$很愛我."裡的佔位符用變數代替。

function

template

(string)]*)}/g;

return string.replace(reg,function

(match,p1)else

if(!/^[a-za-z_$]+[\w$]*$/.test(variable))else

})}//做個測試

var me = "hezebing";

var lover = "wangyanyan";

template("我叫$,愛人是$");//"我叫hezebing,愛人是wangyanyan"

//測試異常

template("我叫$,愛人是$");//_me is not defined

template("我叫$,愛人是$");//unexpected token +me

ok執行完美。

深入理解ES6 字串和正規表示式

1.es6新增了codepointat 方法,接受編碼單元的位置而非字元位置作為引數,返回與字串中給定位置對應的碼位,即乙個整數值。與codepointat 方法相反,string.formcodepoint 方法根據指定的碼位生成乙個字元。2.es6新增normalize 方法,提供unicode...

ES6 字串模板

1.普通字串的拼接 普通字串在與變數拼接時一般使用 號,這種適用於簡單的拼接。如果是複雜的拼接使用jsx中的字串模板比較方便。1.普通字串的拼接 var str i bought an iphone var number 7 console.log str number s i bought an ...

ES6 字串模板

語法 把字串寫在 裡面,獲取值 var obj 傳統列印 console.log 我的名字叫 obj.name 今年 obj.age 歲 es6 console.log 我的名字叫 今年 歲 模板模組 緊跟在乙個函式名後面,該函式將被呼叫來處理這個模板字串 alert hello alert hel...