toLocaleLowerCase()和toLowerCase()之间的区别

这个问题在这里已经有了答案:

  • 在JS引擎中,具体来说,就是对LowCase&toUpperCase区域设置敏感吗? 2个答案

  • toLowerCase不同, toLocaleLowerCase将本地化考虑在内。 在大多数情况下,对于大多数语言,他们会产生类似的输出,但某些语言的行为会有所不同。

    查看MDN上的说明:

    toLocaleLowerCase()方法根据任何特定于语言环境的大小写映射返回转换为小写字母的字符串的值。 toLocaleLowerCase()不影响字符串本身的值。 在大多数情况下,这将产生与toLowerCase()相同的结果,但对于某些语言环境(如土耳其语,其大小写映射不遵循Unicode中的默认情况映射),可能会有不同的结果。

    为了完整toUpperCasetoUpperCasetoLocaleUpperCase行为同样如此,除了上层外壳。


    现在针对您的代码段没有做任何事情的问题。 实际上有两个问题。

  • 这些方法返回新的字符串,不修改原始的(JavaScript字符串是不可变的)。 您将需要重新将值分配回元素。

  • innerText是非标准的,并且不适用于所有浏览器。 改为使用textContent ,并且只添加innerText以支持旧版本的IE。

  • 工作片段:

    function ByLocale() {
      var el = document.getElementById("demo");
      el.textContent = el.textContent.toLocaleLowerCase();
    }
    
    function ByLower() {
      var el = document.getElementById("demo");
      el.textContent = el.textContent.toLowerCase();
    }
    <p>Click the button to convert the string "HELLO World!" to lowercase letters.</p>
    
    <button onclick="ByLocale();">By Locale LowerCase</button>
    <button onclick="ByLower();">By LowerCase</button>
    
    <p id="demo">HELLO World!</p>
    链接地址: http://www.djcxy.com/p/21257.html

    上一篇: Difference between toLocaleLowerCase() and toLowerCase()

    下一篇: How to convert upper to lower and replace spaces with dashes?