String.format-Funktion
Aktualisiert: November 2007
Ersetzt jedes Formatelement in einem String-Objekt durch den Text, der dem Wert eines entsprechenden Objekts entspricht.
var s = String.format(format, args);
Argumente
format
Eine Formatierungszeichenfolge.args
Ein Array zu formatierender Objekte.
Rückgabewert
Eine Kopie der Zeichenfolge mit angewendeter Formatierung.
Ausnahmen
Ausnahmetyp |
Bedingung |
---|---|
(Debuggen) format enthält eine nicht übereinstimmende öffnende oder schließende geschweifte Klammer. |
Hinweise
Verwenden Sie die format-Funktion, um festgelegte Formatelemente durch die Textdarstellung der entsprechenden Objektwerte zu ersetzen. Das args-Argument kann ein einzelnes Objekt oder ein Objektarray enthalten. Das format-Argument besteht aus 0 (null) oder mehreren Einheiten festgelegten Texts mit mindestens einem Formatelement. Jedes Formatelement entspricht einem Objekt in objects. Zur Laufzeit wird jedes Formatelement durch die Zeichenfolgendarstellung des entsprechenden Objekts in der Liste ersetzt.
Formatelemente bestehen aus einer in geschweifte Klammern eingeschlossenen Zahl, wie {0}, die ein entsprechendes Element in der objects-Liste kennzeichnet. Die Nummerierung beginnt mit 0. Um eine einzelne geschweifte Klammer als Literalzeichen im Format anzugeben, verwenden Sie zwei vorangestellte oder nachgestellte geschweifte Klammern, also "{{" oder "}}". Geschachtelte geschweifte Klammern werden nicht unterstützt.
Festlegen einer benutzerdefinierten Formatierungsroutine
Sie können eine benutzerdefinierte Formatierungsroutine für ein Formatelement festlegen, indem Sie ein spezielles Formatierungsobjekt bereitstellen, das über eine toFormattedString-Methode im args-Argument verfügt. Die toFormattedString-Methode muss ein Zeichenfolgenargument akzeptieren und eine Zeichenfolge zurückgeben. Zur Laufzeit übergibt die format-Funktion eine Zeichenfolge innerhalb der geschweiften Klammern des entsprechenden Parameterspezifizierers an die toFormattedStrings-Methode. Die von der toFormattedString-Methode zurückgegebene Zeichenfolge wird an der Position des entsprechenden Parameterspezifizierers in die formatierte Zeichenfolge eingefügt.
Beispiel
Das folgende Beispiel veranschaulicht, wie festgelegte Formatelemente mithilfe der format-Funktion durch die Textdarstellung der entsprechenden Objektwerte ersetzt werden. Der Code enthält ein Beispiel für ein benutzerdefiniertes Formatierungsobjekt, das über eine toFormattedString-Methode verfügt.
// Define an class with a custom toFormattedString
// formatting routine.
Type.registerNamespace('Samples');
Samples.ToFormattedStringExample = function() {
}
Samples.ToFormattedStringExample.prototype = {
toFormattedString: function(format) {
return "This was custom formatted: " + format;
}
}
Samples.ToFormattedStringExample.registerClass('Samples.ToFormattedStringExample');
var result = "";
// Format a string.
result = String.format("{0:d}", 123);
// Displays: "123"
alert(result);
// Format a string with an object that has
// a custom toFormattedString method.
var o = new Samples.ToFormattedStringExample();
result = String.format("{0:12345}", o);
// Displays: "This was custom formatted: 12345"
alert(result);