如何将JavaScript字符串值转换为小写字母?

例子:从“Your Name”到“Your Name”


当前回答

使用String对象的toLowerCase或toLocaleLowerCase方法。不同之处在于toLocaleLowerCase将考虑用户/主机的当前语言环境。根据ECMAScript语言规范(ECMA-262)的§15.5.4.17,toLocaleLowerCase…

工作原理与toLowerCase完全相同 除非它的结果是故意的 为主机生成正确的结果 环境的当前区域设置 而不是独立于区域设置的结果。 只会在 很少的情况下(如土耳其) 这种语言的规则与 常规的Unicode大小写映射。

例子:

var lower = 'Your Name'.toLowerCase();

还要注意toLowerCase和toLocaleLowerCase函数被实现为在任何值类型上通用工作。因此,您甚至可以在非string对象上调用这些函数。这样做将意味着在更改结果字符串值中每个字符的大小写之前自动转换为字符串值。例如,你可以像这样直接应用toLowerCase:

var lower = String.prototype.toLowerCase.apply(new Date());

有效地等价于:

var lower = new Date().toString().toLowerCase();

第二种形式因其简单易读而更受欢迎。在IE的早期版本中,第一个版本的好处是它可以使用空值。对null应用toLowerCase或toLocaleLowerCase的结果将产生null(而不是错误条件)。

其他回答

只是toLowerCase(), toUpperCase()的一个例子和尚未可用的toTitleCase()或toProperCase()的原型:

字符串。 return this。斯普利特(' ')。地图(i => i[0].toUpperCase() + i.substring(1).toLowerCase())。join (' '); ) 字符串,原型,toPropperCase =功能() return this toTitleCase (); ) var原创案例=“你的名字”; var lowercase =原创案例。 var upperCase = lowercase.toUpperCase(); var titleCase = upperCase.toTitleCase(); log控制台(“原创:”+原创案例); log控制台(' tolowercase (') + lowercase); log控制台(' touppercase (') + upperCase); log控制台(' totitlecase ': ' + titleCase);

是的,JavaScript中的任何字符串都有一个toLowerCase()方法,该方法将返回一个新字符串,该新字符串是小写的旧字符串。旧字符串将保持不变。

所以,你可以这样做:

"Foo".toLowerCase();
document.getElementById('myField').value.toLowerCase();

我注意到很多人在JavaScript中寻找strtolower()。他们希望函数名与其他语言相同,这就是为什么这篇文章在这里。

我建议使用原生JavaScript函数:

“一些字符串“.toLowerCase ()

下面的函数与PHP函数的行为完全相同(适用于那些将PHP代码移植到JavaScript的人)

function strToLower (str) {
    return String(str).toLowerCase();
}

如果你想自己构建:

function toLowerCase(string) {

    let lowerCaseString = "";

    for (let i = 0; i < string.length; i++) {
        // Find ASCII charcode
        let charcode = string.charCodeAt(i);

        // If uppercase
        if (charcode > 64 && charcode < 97) {
            // Convert to lowercase
            charcode = charcode + 32
        }

        // Back to char
        let lowercase = String.fromCharCode(charcode);

        // Append
        lowerCaseString = lowerCaseString.concat(lowercase);
    }

    return lowerCaseString
}

选项1:使用toLowerCase()

var x = 'ABC';
x = x.toLowerCase();

选项2:使用自己的函数

function convertToLowerCase(str) {
  var result = '';

  for (var i = 0; i < str.length; i++) {
    var code = str.charCodeAt(i);
    if (code > 64 && code < 91) {
      result += String.fromCharCode(code + 32);
    } else {
      result += str.charAt(i);
    }
  }
  return result;
}

称之为:

x = convertToLowerCase(x);