我对javascript编程非常陌生,下面有一个难题。
如何函数接收一个字符串并返回一个字符串,该字符串本身与字符串的反面交织在一起。例如,“ ab12”将是“ ab12”和“ 21ba”交织在一起,使其成为:“ a2b11b2a”
我以这种方式尝试给出错误。任何帮助将不胜感激。 谢谢
function interwoven(str) {
var newString = "";
for (var i = str.length - 1; i >= 0; i--) {
for (var j = str.length; i <= 0; i++)
newString += str[j+i];
}
return newString;
}
interwoven('ab12');
答案 0 :(得分:2)
您可以使用两个递增的索引j
和递减的function interwoven(str) {
var i = 0, len = str.length, j = len - 1, newString = "";
for (; i < len; i++, j--) {
newString += str[i] + str[j]
}
return newString;
}
console.log(interwoven('ab12'));
var a = document.getElementById("id");
a.innerHTML = "<objects></objects>";
答案 1 :(得分:0)
我会这样做:
function interwoven(str) {
return str.split('').reduce((acc, cur, idx, src) =>
acc + cur + src[src.length - (idx + 1)], '');
}
console.log(interwoven('ab12'))
答案 2 :(得分:0)
function interwoven(string) {
// store string in array string-array
let string-array = string.split('');
// copy string-array, reverse, and store in string-array-reverse
let string-array-reverse = string-array.reverse();
let interwoven-array = [];
let index;
for (index = 0; index < string-array.length; index++) {
interwoven-array.push(string-array[index]);
interwoven-array.push(string-array-reverse[index]);
}
return interwoven-array;
}
interwoven('ab12');