我使用toLocaleLowerCase()
的拉丁字符。拉丁字符是“Ö”。拳我编码则试图通过使用获得它的小写toLocaleLowerCase()
。似乎没有给我正确的小写字母
const encodedText: string = encodeURIComponent("Å"); --> value is "%C3%85"
const lowerCaseText: string = encodedText.toLocaleLowerCase(); --> value is "%c3%85". But it should be "%C3%A5"
这是怎么了?
与浏览器的语言环境有关吗?
我该如何解决?
答案 0 :(得分:1)
您所做的工作顺序错误。
您要先使用toLocaleLowerCase
,然后再使用encodeURIComponent
。否则,它将更改编码字符串的大小写,而不是字符串本身。
var char = "Å";
console.log(encodeURIComponent(char));
var lowerCaseChar = char.toLocaleLowerCase();
console.log(encodeURIComponent(lowerCaseChar));