Javascript 如何在两个字符串之间重复字母数

Javascript 如何在两个字符串之间重复字母数,javascript,recursion,Javascript,Recursion,我试图在递归的帮助下,在另一个字符串“Bat”之间重复添加一个字符串“a”,但似乎不起作用。我知道如何使用.repeat(),但我想尝试使用递归 功能重复(n){ 设str=''; 如果(n考虑在递归函数周围使用另一个包装函数,以便可以将B和t与as分开添加: const repeatA=n=>a'+(n==1?'':repeatA(n-1)); 功能重复(n){ 返回“B”+重复A(n)+“t” } console.log(repeat(5))您需要在函数调用之间跟踪str。您可以通过使用

我试图在递归的帮助下,在另一个字符串“Bat”之间重复添加一个字符串“a”,但似乎不起作用。我知道如何使用.repeat(),但我想尝试使用递归

功能重复(n){
设str='';

如果(n考虑在递归函数周围使用另一个包装函数,以便可以将
B
t
a
s分开添加:

const repeatA=n=>a'+(n==1?'':repeatA(n-1));
功能重复(n){
返回“B”+重复A(n)+“t”
}

console.log(repeat(5))
您需要在函数调用之间跟踪
str
。您可以通过使用
function.prototype.bind将
str
的值存储在
this
中、添加额外的
str
参数或使用全局变量来实现

//使用Function.prototype.bind
函数重复绑定(n){
const str=this.str??“”;

如果(n)有比递归更好的方法。但是如果这是你想要的。假设你有repeat(4)=“Baaaat”。你如何将它转换为repeat(5)=“Baaaat”。你在开始添加一个“a”。你想在第一个字符后添加“a”。如果你不关心递归,这只是
“B”+“a”*n+“t”
.Python允许对字符串进行乘法。