【发布时间】:2018-12-07 19:19:05
【问题描述】:
我需要在数组的每个元素中大写偶数字符和小写奇数字符,以便输入“This is a test”输出将是“ThIs Is A TeSt”(不包括空格,以便每个单词以大写字母)。
到目前为止,这是我想出的:
function toWeirdCase(string) {
var reg = /\b(?![\s.])/
var res = string.split(reg)
var newArr = []
for (let k = 0; k < res.length; k++) {
for (let j = 0; j < res[k].length; j++) {
if (j % 2 == 0) {
res[k].charAt(j).toUpperCase()
} else {
res[k].charAt(j).toLowerCase()
}
}
newArr.push(res[k])
}
return newArr.join('')
}
console.log(toWeirdCase('This is a test'))
它没有按预期工作,由于缺乏经验,我无法判断缺少什么。你能帮我解决这个问题吗?谢谢你。
【问题讨论】:
-
您的代码对每个单词中的奇数/偶数字母进行操作,而不是在字符串中。那是你真正想要的吗?
标签: javascript arrays loops sorting