在JavaScript 中從常規字串建立模板字串
問題出現了:是否可以輕鬆地將常規字串轉換為模板字串?
考慮以下事項:
let a = "b:${b}";
我們可能想要將其轉換為模板字串:
let b = 10; console.log(a.template()); // b:10
在不依賴eval 或類似的動態程式碼生成方法的情況下實現此目的,在ES6中有一個簡單的解決方案:
String.prototype.interpolate = function(params) { const names = Object.keys(params); const vals = Object.values(params); return new Function(...names, `return \`${this}\`;`)(...vals); }
使用此方法放置,使用它變得簡單:
const template = 'Example text: ${text}'; const result = template.interpolate({ text: 'Foo Boo' }); console.log(result);
以上是如何在 JavaScript 中輕鬆將常規字串轉換為模板字串?的詳細內容。更多資訊請關注PHP中文網其他相關文章!