Array.prototype.toLocaleString()
åºçº¿
广æ³å¯ç¨
èª 2015å¹´7æ èµ·ï¼æ¤ç¹æ§å·²å¨ä¸»æµæµè§å¨ä¸å¾å°æ¯æï¼å¯å¨å¤§å¤æ°è®¾å¤åæµè§å¨çæ¬ä¸æ£å¸¸ä½¿ç¨ã
toLocaleString() æ¹æ³è¿åä¸ä¸ªå符串ï¼è¡¨ç¤ºæ°ç»ä¸çææå
ç´ ãæ¯ä¸ªå
ç´ éè¿è°ç¨å®ä»¬èªå·±ç toLocaleString æ¹æ³è½¬æ¢ä¸ºå符串ï¼å¹¶ä¸ä½¿ç¨ç¹å®äºè¯è¨ç¯å¢çå符串ï¼ä¾å¦éå·â,âï¼åéå¼ã
å°è¯ä¸ä¸
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
è¯æ³
toLocaleString()
toLocaleString(locales)
toLocaleString(locales, options)
åæ°
localeså¯é-
带æ BCP 47 è¯è¨æ ç¾çåç¬¦ä¸²ï¼æè æ¤ç±»åç¬¦ä¸²çæ°ç»ã对äº
localesåæ°çä¸è¬å½¢å¼å说æï¼å¯ä»¥åè§Intl主页é¢çåæ°è¯´æã optionså¯é-
ä¸ä¸ªå ·æé ç½®å±æ§ç对象ãå¯¹äºæ°åï¼è¯·åè§
Number.prototype.toLocaleString()ï¼å¯¹äºæ¥æï¼è¯·åè§Date.prototype.toLocaleString()ã
è¿åå¼
ä¸ä¸ªå符串ï¼è¡¨ç¤ºæ°ç»ä¸çææå ç´ ã
æè¿°
Array.prototype.toLocaleString æ¹æ³éåæ°ç»å
容ï¼å¹¶ä½¿ç¨æä¾ç locales å options åæ°è°ç¨æ¯ä¸ªå
ç´ ç toLocaleString æ¹æ³ï¼éè¿ç±å®ç°å®ä¹çåé符ï¼ä¾å¦éå·â,âï¼å°è½¬æ¢åçåç¬¦ä¸²æ¼æ¥èµ·æ¥ã请注æï¼è¯¥æ¹æ³æ¬èº«ä¸ä¼ä½¿ç¨è¿ä¸¤ä¸ªåæ°ââå®åªæ¯å°å
¶ä¼ éç»æ¯ä¸ªå
ç´ ç toLocaleString()ãåé符çéæ©åå³äºä¸»æºå½åçè¯è¨ç¯å¢ï¼è䏿¯ locales åæ°ã
妿ä¸ä¸ªå
ç´ æ¯ undefinedãnullï¼å®ä¼è¢«è½¬æ¢ä¸ºç©ºå符串ï¼è䏿¯ "null" æè
"undefined"ã
å½ç¨äºç¨çæ°ç»æ¶ï¼toLocaleString() æ¹æ³è¿ä»£æ¶ä¼æç©ºæ§½å½ä½ undefined 䏿 ·å¤çå®ã
toLocaleString() æ¹æ³æ¯éç¨çãå®åªææ this å¼å
·æ length 屿§åæ´æ°é®å±æ§ã
示ä¾
>ä½¿ç¨ locales å options
æ°ç»å
ç´ éè¿ä½¿ç¨å®ä»¬ç toLocaleString æ¹æ³è½¬æ¢ä¸ºå符串ã
Objectï¼Object.prototype.toLocaleString()Numberï¼Number.prototype.toLocaleString()Dateï¼Date.prototype.toLocaleString()
å§ç»æ¾ç¤º prices æ°ç»ä¸åç¬¦ä¸²åæ°åçè´§å¸ç¬¦å·ï¼
const prices = ["ï¿¥7", 500, 8123, 12];
prices.toLocaleString("ja-JP", { style: "currency", currency: "JPY" });
// "ï¿¥7,ï¿¥500,ï¿¥8,123,ï¿¥12"
æ´å¤ç¤ºä¾è¯·åè§ Intl.NumberFormat å Intl.DateTimeFormat 页é¢ã
å¨ç¨çæ°ç»ä¸ä½¿ç¨ toLocaleString()
toLocaleString() å°ç©ºæ§½è§ä¸º undefined ï¼å¹¶çæä¸ä¸ªé¢å¤çåé符ï¼
console.log([1, , 3].toLocaleString()); // '1,,3'
å¨éæ°ç»å¯¹è±¡ä¸ä½¿ç¨ toLocaleString()
toLocaleString() æ¹æ³è¯»å this ç length 屿§ï¼ç¶åè®¿é®æ¯ä¸ªæ´æ°ç´¢å¼ã
const arrayLike = {
length: 3,
0: 1,
1: 2,
2: 3,
};
console.log(Array.prototype.toLocaleString.call(arrayLike));
// 1,2,3
è§è
| è§è |
|---|
| ECMAScript® 2027 Language Specification> # sec-array.prototype.tolocalestring> |
| ECMAScript® 2027 Internationalization API Specification> # sup-array.prototype.tolocalestring> |