JavaScript 等價於 Printf 或 String.Format 的函式
本文將描述 JavaScript 中 printf
或 String.Format
的替代方案。
printf
是我們在大多數程式語言中使用的函式,例如 C
、PHP
和 Java
。此標準輸出功能允許你在控制檯上列印字串或語句。
但是在 JavaScript 中,我們不能使用 printf
,所以我們需要它的替代品,我們將在這裡討論。除此之外,我們有時會使用格式說明符來自定義輸出格式。
在 JavaScript 中使用 console.log()
這裡的一種選擇是使用 console.log
在控制檯上列印一些東西。這是在 ES6 更新後提供的,它的工作方式與 printf
的工作方式非常相似。
console.log
非常簡單,當然是開發人員中最常見的。讓我們看一下下面的程式碼片段,以瞭解 JavaScript 中 console.log
的工作原理。
function example(){
let i=5;
console.log(i);
}
example();
我們在此程式碼段中使用 let
關鍵字宣告瞭一個變數,並將其列印在控制檯上。因此,我們使用 console.log(i)
檢索變數 i
的值並將其列印在控制檯螢幕上。
如果我們想列印一些字串或一些隨機文字,我們可以通過以下方式使用 console.log
:
function example(){
console.log('Hello');
}
example();
如你所見,在此程式碼段中,我們使用了 console.log
並在 '
中輸入了我們想要列印的文字。它是如何在 JavaScript 中使用 console.log
列印普通文字專案。
這表明 console.log
是 printf
的最簡單和容易的替代品。但是如果你想自定義輸出的格式,那麼我們可以建立一個自定義原型來建立 String.Format
功能。
我們可以看到以下程式碼段作為示例:
String.prototype.format = function () {
var args = arguments;
return this.replace(/{(\d+)}/g, function (match, number) {
return typeof args[number] != "undefined" ? args[number] : match;
});
};
console.log("{0} was used as placeholder, furthermore {1} is used as the second argument {0} {2}".format("C language", "C sharp"));
我們建立了一個自定義原型函式,附加到此程式碼段中的每個 JavaScript 字串物件。格式函式的作用是獲取字串並查詢 {}
,並將其中的數字替換為該索引處提供的引數。
因此,{0}
被 C language
替換,{1}
被 C sharp
替換。但是 {2}
保持原樣,因為我們沒有為 {2}
佔位符提供任何引數。
如果你提供第三個引數,括號 {2}
將替換為第三個引數。它可能有助於你理解自定義 String.prototype.format
函式。