为什么 Chrome 上的 de-DE 区域设置使用字符代码 160 而不是 32?

Why does de-DE locale on Chrome use char code 160 instead of 32?

const EUR = new Intl.NumberFormat("de-DE", { style: "currency", currency: "EUR" })
const a = EUR.format(1)
console.log(a)
//"1,00 €"
console.log(a.charCodeAt(4))
//160

为什么 Chrome 上的 de-DE 区域设置使用字符代码 160 而不是 32?

Unicode 160 是一个 NO-BREAK SPACE,这是有道理的,因为如果没有足够的货币符号,您绝对不希望货币符号单独出现在下一行中 space .货币符号是价格的一部分,应该靠近它。