【JS字符串】toUpperCase – 返回所有字符都转换为大写的字符串
在本教程中,您将学习如何使用 JavaScript String.prototype.toUpperCase() 方法返回一个所有字符都转换为大写的字符串。
JavaScript toUpperCase() 方法介绍
toUpperCase() 方法返回一个所有字符都转换为大写的新字符串。 下面是 toUpperCase() 方法的语法:
str.toUpperCase()
例如:
const message = ‘Hello’;
const newMessage = message.toUpperCase();console.log(newMessage);
输出:
HELLO
重要的是要注意字符串是不可变的。 因此,toUpperCase() 方法不会更改原始字符串。 相反,它返回一个所有字符都转换为大写的新字符串。
在 undefined 或 null 上调用 toUpperCase 方法
如果在 null 或 undefined 上调用 toUpperCase() 方法,该方法将抛出 TypeError 异常。 例如,如果 id 大于零或未定义,则以下 getUserRanking() 函数返回一个字符串:
const getUserRanking = (id) => {
if (id > 0) {
return ‘Standard’;
}
};
请注意,当您未明确返回值时,函数默认返回 undefined 。
如果您对 getUserRanking() 函数的结果调用 toUpperCase() 方法,当 id 为零或负数时,您将得到 TypeError:
console.log(getUserRanking(-1).toUpperCase());
错误:
TypeError: Cannot read properties of undefined (reading ‘toUpperCase’)
为避免该错误,您可以使用可选的链接运算符 ?。
像这样:
console.log(getUserRanking(-1)?.toUpperCase());
输出:
undefined
将非字符串转换为字符串
如果您将其 this 值设置为非字符串值,则 toUpperCase() 方法会将非字符串值转换为字符串。 例如:
const completed = true;
const result = String.prototype.toUpperCase.call(completed);console.log(result);
输出:
TRUE
在这个例子中,完成的是真的,这是一个布尔值。 当我们在 completed 变量上调用 toUpperCase() 方法并将 toUpperCase() 的 this 设置为 completed 时,该方法将布尔值 true 转换为字符串“TRUE”。
总结
使用 toUpperCase() 方法返回所有字符都转换为大写的字符串。