再探 Intl.ListFormat()
前言
在先前的 初探 Intl.ListFormat() 介紹了使用各種 type 後的結果差異,會引響結果的參數還有 style ,在此把學習的過程做個紀錄。
內容
範例如下
const itemList = ['A', 'B', 'C' , 'D' ]; // console.log( new Intl.ListFormat('zh-TW', { style: 'long', type: 'conjunction', }).format(itemList) );//A、B、C和D // console.log( new Intl.ListFormat('zh-TW', { style: 'short', type: 'conjunction', }).format(itemList) );//A、B、C和D // console.log( new Intl.ListFormat('zh-TW', { style: 'narrow', type: 'conjunction', }).format(itemList) );//A、B、C和D // console.log( new Intl.ListFormat('en', { style: 'long', type: 'conjunction', }).format(itemList) );//A, B, C, and D // console.log( new Intl.ListFormat('en', { style: 'short', type: 'conjunction', }).format(itemList) );//A, B, C, & D // console.log( new Intl.ListFormat('en', { style: 'narrow', type: 'conjunction', }).format(itemList) );//A, B, C, D // console.log( new Intl.ListFormat('en', { style: 'long', type: 'unit', }).format(itemList) );//A, B, C, D
這次調整 style 的參數,可以是 long 、 short 與 narrow ,預設是 long ,範例的地區使用 zh-TW 時發現這三種參數結果是一樣的!但當地區改成 en 後,結果就有差異 ,使用 short 後會發現 and 會被戴換成 & ,使用 narrow 後更是發現連 and 都不見了!結果會和把 type 輸入 unit 的結果一樣,也就是說當 type 是 conjuction 時不一定都會顯示 and ,還要看 style 與地區的參數才能決定是否有 and。
參考資料
[ developer.mozilla.org ] Intl.ListFormat
沒有留言:
張貼留言