在 JavaScript 中用 toLowerCase() 将字符串转换为小写
字符串是使用 JavaScript 中的一个基本部分。而 toLowerCase()
方法是你可以用来处理字符串的众多集成方法之一。
在这篇文章中,我们将看到如何用 Python 中的 toLowerCase()
方法将字符串转换为小写。
什么是字符串?
字符串是一种数据类型,可以包含许多不同的字符。字符串是一系列字符放在单引号或双引号之间。
const exampleString = 'I am a String!'
console.log(exampleString); // I am a String!
什么是方法?
方法是一个你可以在一个特定数据类型上使用的函数。方法可以接受或不接受参数。
toLowerCase() 方法是如何运行的?
toLowerCase()
方法是一个字符串方法,返回一个完全小写的新字符串。如果原始字符串中有大写字母,在新的字符串中这些字母将是小写的。任何小写字母,或者任何不是字母的字符,都不会受到影响。
console.log(exampleString.toLowerCase()); // i am a string!
console.log('FREECODECAMP'.toLowerCase()); // freecodecamp
使用 toLowerCase 方法时应注意的事项
toLowerCase()
方法做了一件非常简单的事情:它创建了一个新的字符串,其中所有的大写字母现在都是小写的。但是在使用该方法时,有几件事需要注意。让我们来看一下。
字符串是不可变的
字符串是一种不可变的数据类型,这意味着它们不能被改变。在你使用 toLowerCase()
方法后,原始字符串将保持不变。
在上面的例子中,toLowerCase()
方法已经作用于 exampleString
,但并没有改变它。检查 exampleString
的值仍然显示原来的值:
console.log(exampleString); // I am a string!
console.log(exampleString.toLowerCase()); // i am a string!
console.log(exampleString); // I am a string!
toLowerCase() 方法返回一个新的字符串
这意味着 toLowerCase()
方法返回一个新的字符串。如果你想在你的代码中再次使用它,你需要把它保存在一个变量中。
const newString = exampleString.toLowerCase()
console.log(newString); // i am a string!
字符串是区分大小写的
字符串是区分大小写的,所以小写的字符串与大写的字符串是不同的。
console.log('freecodecamp' === 'FREECODECAMP'); // false
在思考 toLowerCase()
方法的用处时,这一点很有用。在这个例子中,你将看到这个特点是如何使 toLowerCase()
方法在构建处理字符串的脚本或程序时变得有用和必要。
toLowerCase() 方法实例——如何检查用户输入的内容是否匹配?
让我们写一个小程序,向用户提出问题,获得输入,并对用户的答案给予反馈。
有多种方法可以做到这一点:你可以在 web 应用中使用,从 type="text"
的 input
元素中获取值。为了简单起见,在这个例子中你将看到 prompt
JavaScript 函数的用法。
prompt
函数将显示一个浏览器信息弹出窗口,其中有一个输入字段,用户可以在其中写下一个答案。
const answer = prompt("What color is the sun?")
if (answer.toLowerCase() === "yellow") {
alert("Correct!")
} else {
alert("That is not the correct color!")
}
这段代码问用户一个问题:“What color is the sun?”,并等待答案。然后检查答案是否为 “yellow”,如果是,则打印 “Correct!” 如果不是,则打印 “That is not the correct color!”
但是这段代码有一个问题。
运行这段代码,弹出窗口会提出这个问题:

如果你回答 “Yellow”,它会显示 “That is not the correct color!”(这不是正确的颜色!)
为什么会出现这种情况?
记住,字符串是区分大小写的。脚本正在检查用户是否输入了 yellow
这个字符串——Yellow
,大写的 “Y”,是一个不同的字符串。
你可以通过使用 toLowerCase()
方法,并对代码做这个小改动来轻松解决这个问题:
const answer = prompt("What color is the sun?")
if (answer.toLowerCase() === "yellow") {
alert("Correct!")
} else {
alert("That is not the correct color!")
}
现在,如果你再试一次……

有什么变化?编写 answer.toLowerCase()
时,你要确保被检查的字符串在与正确答案字符串 “yellow” 进行比较之前是完全小写的。这样一来,无论用户写的是 “YELLOW” 还是 “yELLOW” 或者 “yellow” 都没关系——都被转换为小写。