原文: How to Lowercase a String in JavaScript – toLowerCase() in JS

字符串是使用 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!”

但是这段代码有一个问题。

运行这段代码,弹出窗口会提出这个问题:

image-69

如果你回答 “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!")
}

现在,如果你再试一次......

image-70

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

谢谢你阅读本文!现在你知道如何在 JavaScript 中使用 toLowerCase() 方法了。