我正在开发一个程序,它接受一个字符串,将其拆分,返回第一个字符串,只有第一个字母大写,然后返回第二个字符串,所有字母都大写。代码如下:
var name = "ThEoDORe RoOseVElT";
function nameChanger(oldName) {
var finalName = oldName;
var splitNames = finalName.split(" ");
var secondName = splitNames.pop();
var firstName = splitNames;
var secondName2 = secondName.toUpperCase();
var firstName2 = firstName.toLowerCase();
var finalName = firstName + " " + secondName;
return finalName; };
给出的错误状态为“Uncaught”和“TypeError:undefined is not a function”。我知道我的问题是第 11 行和第 12 行的 toUpperCase() 和 toLowerCase() 方法,但我不知道为什么。
最佳答案
您遇到的当前错误是因为您的 firstName
变量包含一个数组而不是一个字符串。你可以通过改变这个来解决这个问题
var firstName = splitNames;
...为此:
var firstName = splitNames.pop();
但是,您应该添加一些检查,而不是仅仅假设传入的名称也将采用“word word”格式。
关于javascript - 将字符串转换为大写和小写,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29184427/