![](/img/trans.png)
[英]How to print string even-indexed and odd-indexed characters as 2 space-separated strings on a single line?
[英]Converting Odd and Even-indexed characters in a string to uppercase/lowercase in Javascript?
我需要创建一个函数来读取字符串输入并将字符串中的奇数索引字符转换为大写,将偶数转换为小写。
function alternativeCase(string){
for(var i = 0; i < string.length; i++){
if (i % 2 != 0) {
string[i].toUpperCase();
}
else {
string[i].toLowerCase();
}
}
return string;
}
如何修复我的代码?
function alternativeCase(string){
return string.split('').map(function(c,i) {
return i & 1 ? c.toUpperCase() : c.toLowerCase();
}).join('');
}
现在使用 ES6 语法非常安全:
const alternativeCase = string => string.split('')
.map((c,i) => i & 1 ? c.toUpperCase() : c.toLowerCase()).join('');
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(''); }
尝试这个:
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;
}
处理字符之间空格的 RegExp 替代方案:
const alternativeCase = s => s.replace(/(\\S\\s*)(\\S?)/g, (m, a, b) => a.toUpperCase() + b.toLowerCase()); console.log( alternativeCase('alternative Case') )
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.