我有一个全局变量,我想在 for 循环中更改它并稍后在“for”之外使用它
我想编写代码来更正姓氏和姓名。例如:
用户:NICK WATERSON ...代码:Nick Waterson
用户:nick Waterson ...代码:Nick Waterson
用户:nIck Waterson ...代码:Nick Waterson
let fTab = 0;
Register: while (true) {
var name = prompt('Your fullname:', '');
for (let i = 0; i < name.length; i++) {
if (name.charAt(i) == ' ') {
fTab = i;
break Register;
}
}
alert('Error!!')
}
name.toLowerCase();
alert('Your name is ' + name.charAt(0).toUpperCase() + name.substr(1, fTab) + name.charAt(i + fTab).toUpperCase() + name.substr(fTab + 2));
程序不返回任何内容,因为找不到“fTab”的值
最佳答案
正如 @Quentin 在他的评论中提到的,您正在使用一种复杂的方式在 TitleCase 中命名名称。 您可以使用以下方式,易于阅读且简洁。
let name = prompt('Your fullname:', '');
let correctedName = name.split(' ')
.map(first => first[0].toUpperCase() + first.substr(1).toLowerCase())
.join(' ');
console.log(correctedName);
关于javascript - 在 JavaScript 循环中使用全局变量更改的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57029280/