Movatterモバイル変換


[0]ホーム

URL:


MDN Web Docs

Cette page a été traduite à partir de l'anglais par la communauté. Vous pouvez également contribuer en rejoignant la communauté francophone sur MDN Web Docs.

Array.prototype.toLocaleString()

BaselineWidely available

La méthodetoLocaleString() renvoie une chaîne de caractères qui représente les éléments du tableau. Les éléments sont convertis en chaînes de caractères grâce à leurs méthodestoLocaleString et chacune de ces chaînes est séparée des autres avec un séparateur propre à la locale courante (par exemple une virgule ou un point).

Exemple interactif

const array1 = [1, "a", new Date("21 Dec 1997 14:12:00 UTC")];const localeString = array1.toLocaleString("en", { timeZone: "UTC" });console.log(localeString);// Expected output: "1,a,12/21/1997, 2:12:00 PM",// This assumes "en" locale and UTC timezone - your results may vary

Syntaxe

js
arr.toLocaleString();arr.toLocaleString(locales);arr.toLocaleString(locales, options);

Paramètres

localesFacultatif

Une chaine de caractères avec un identifiant de langue BCP 47, ou un tableau de ce type de chaine de caractères. Pour le format général et l'interprétation de l'argumentlocales. Pour plus de détails quant à la forme et l'interprétation de l'argumentlocales, on consultera la pageIntl.

optionsFacultatif

Un objet qui contient des propriétés de configuration. Pour les nombres, consulterNumber.prototype.toLocaleString(), pour les dates, consulterDate.prototype.toLocaleString().

Valeur de retour

Une chaîne de caractères qui représente les éléments du tableau.

Exemples

Utiliser les argumentslocales etoptions

Les éléments du tableau sont converties en chaînes de caractères via leurs méthodestoLocaleString().

Ici, on voit qu'on affiche le symbole de la devise de la locale pour chacun des éléments (nombres ou chaînes de caractères) du tableauprix :

js
var prix = ["¥7", 500, 8123, 12];prix.toLocaleString("ja-JP", { style: "currency", currency: "JPY" });// "¥7,¥500,¥8,123,¥12"

Pour plus d'exemples, on peut se référer aux pagesIntl,NumberFormat etDateTimeFormat.

Prothèse d'émulation (polyfill)

js
// https://tc39.github.io/ecma402/#sup-array.prototype.tolocalestringif (!Array.prototype.toLocaleString) {  Object.defineProperty(Array.prototype, "toLocaleString", {    value: function (locales, options) {      // 1. Let O be ? ToObject(this value).      if (this == null) {        throw new TypeError('"this" is null or not defined');      }      var a = Object(this);      // 2. Let len be ? ToLength(? Get(A, "length")).      var len = a.length >>> 0;      // 3. Let separator be the String value for the      //    list-separator String appropriate for the      //    host environment's current locale (this is      //    derived in an implementation-defined way).      // NOTE: In this case, we will use a comma      var separator = ",";      // 4. If len is zero, return the empty String.      if (len === 0) {        return "";      }      // 5. Let firstElement be ? Get(A, "0").      var firstElement = a[0];      // 6. If firstElement is undefined or null, then      //  a.Let R be the empty String.      // 7. Else,      //  a. Let R be ?      //     ToString(?      //       Invoke(      //        firstElement,      //        "toLocaleString",      //        « locales, options »      //       )      //     )      var r =        firstElement == null          ? ""          : firstElement.toLocaleString(locales, options);      // 8. Let k be 1.      var k = 1;      // 9. Repeat, while k < len      while (k < len) {        // a. Let S be a String value produced by        //   concatenating R and separator.        var s = r + separator;        // b. Let nextElement be ? Get(A, ToString(k)).        var nextElement = a[k];        // c. If nextElement is undefined or null, then        //   i. Let R be the empty String.        // d. Else,        //   i. Let R be ?        //     ToString(?        //       Invoke(        //        nextElement,        //        "toLocaleString",        //        « locales, options »        //       )        //     )        r =          nextElement == null            ? ""            : nextElement.toLocaleString(locales, options);        // e. Let R be a String value produced by        //   concatenating S and R.        r = s + r;        // f. Increase k by 1.        k++;      }      // 10. Return R.      return r;    },  });}

S'il faut absolument prendre en charge les moteurs JavaScript qui ne supportent pasObject.defineProperty(), mieux vaut ne pas ajouter de prothèse pour les méthodesArray.prototype car elles ne peuvent pas être rendues non-énumérables.

Spécifications

Specification
ECMAScript® 2026 Language Specification
# sec-array.prototype.tolocalestring
ECMAScript® 2026 Internationalization API Specification
# sup-array.prototype.tolocalestring

Compatibilité des navigateurs

Voir aussi

Help improve MDN

Learn how to contribute.

This page was last modified on byMDN contributors.


[8]ページ先頭

©2009-2025 Movatter.jp