我需要创建一个读取字符串输入的函数,并将字符串中的奇数索引字符转换为upperCase,将偶数字符转换为lowerCase。
function alternativeCase(string){
for(var i = 0; i < string.length; i++){
if (i % 2 != 0) {
string[i].toUpperCase();
}
else {
string[i].toLowerCase();
}
}
return string;
}
如何修复我的代码?
答案 0 :(得分:1)
let urls:[URL] = FileManager.default.urls(for:FileManager.SearchPathDirectory.documentDirectory, in:FileManager.SearchPathDomainMask.userDomainMask)
let appDirectory:URL = urls.last!
var fileUrl:URL = appDirectory.appendingPathComponent("myFile")
var resourceValues:URLResourceValues = URLResourceValues()
resourceValues.isExcludedFromBackup = true
do
{
try fileUrl.setResourceValues(resourceValues)
}
catch let error
{
print(error.localizedDescription)
}
答案 1 :(得分:0)
JavaScript中的字符串是不可变的,请改为尝试:
function alternativeCase(string){
var newString = [];
for(var i = 0; i < string.length; i++){
if (i % 2 != 0) {
newString[i] = string[i].toUpperCase();
}
else {
newString[i] = string[i].toLowerCase();
}
}
return newString.join('');
}
答案 2 :(得分:0)
试试这个:
function alternativeCase(string){
var output = "";
for(var i = 0; i < string.length; i++){
if (i % 2 != 0) {
output += string[i].toUpperCase();
}
else {
output += string[i].toLowerCase();
}
}
return output;
}
答案 3 :(得分:0)
处理字符之间空格的RegExp替代方法:
const alternativeCase = s => s.replace(/(\S\s*)(\S?)/g, (m, a, b) => a.toUpperCase() + b.toLowerCase());
console.log( alternativeCase('alternative Case') )