私は新しいES6 Template Literals機能で遊んでいて、最初に頭に浮かんだのString.format
は JavaScript 用だったので、プロトタイプの実装に取り掛かりました:
String.prototype.format = function() {
var self = this;
arguments.forEach(function(val,idx) {
self["p"+idx] = val;
});
return this.toString();
};
console.log(`Hello, ${p0}. This is a ${p1}`.format("world", "test"));
ただし、テンプレート リテラルは、プロトタイプ メソッドに渡される前に評価されます。上記のコードを記述して、要素を動的に作成するまで結果を延期する方法はありますか?