var S = 'googlgomglegoogle'
var C = 'google'
var sPositon = 0
function violence1() {
for (var i in C) {
if (C.charAt(i) !== S.charAt(sPositon)) {
sPositon += 1
violence1()
break
}
}
console.log(sPositon)
}
violence1()
当我调用这个方法的时候报错
for (var i in C) {
^
RangeError: Maximum call stack size exceeded
是因为递归的时候产生了多个for循环吗?多个for不能同时存在吗?
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号
可以使用,逻辑写得有问题,内存爆了。
每次递归调用中,
C都不变,那肯定要爆内存的。好好看错误的英文啊。
你放在for循环里递归,会无限递归下去的,内存爆了。