Python中支持字符串格式化,其基本形式如下:
1 str = "I'm {name},{age} years old" 2 print(str.format(name="test", age=19)) 3 4 5 """ 6 結果 7 I'm test,19 years old 8 """
在JavaScript中雖沒有類似的方法,但我們可以利用字符串的replace方法自定義字符串的格式化方法:
1 <script> 2 $(function () { 3 /*自定義字符串格式化*/ 4 String.prototype.Format = function (args) { 5 /*this代表要調用Format方法的字符串*/ 6 /*replace的第一個參數為正則表達式,g表示處理匹配到的所有字符串,在js中使用//包起來*/ 7 /*replace的第二個參數為匹配字符串的處理,k1匹配結果包含{},k2只保留{}內的內容*/ 8 var temp = this.replace(/\{(\w+)\}/g, function (k1, k2) { 9 console.log(k1, k2); 10 /*replace將匹配到的k2用參數args替換后賦給新變量temp*/ 11 return args[k2]; 12 }); 13 /*自定義方法Format將格式化后的字符串返回*/ 14 return temp; 15 }; 16 } 17 </script>
驗證: