Javascript 回调函数终止outerloop var items=['1','2','callback','4']; var testCallback=函数(项,项){ 变量输出阵列=[]; 如果(项==“回调”){ 对于(i=0;i
下面是一个例子 我希望输出是125,5,5,54(5,5,5,5替换“回调”)。但是for语句(在testFunction()中)在“callback”之后终止,并且不继续执行items[]中的最后一项,输出是125,5,5,5Javascript 回调函数终止outerloop var items=['1','2','callback','4']; var testCallback=函数(项,项){ 变量输出阵列=[]; 如果(项==“回调”){ 对于(i=0;i,javascript,Javascript,下面是一个例子 我希望输出是125,5,5,54(5,5,5,5替换“回调”)。但是for语句(在testFunction()中)在“callback”之后终止,并且不继续执行items[]中的最后一项,输出是125,5,5,5 非常感谢您的帮助。谢谢您的i循环变量是全局变量,因此它在两个函数中共享 按如下方式更改循环的每个: var items = ['1', '2', 'callback', '4']; var testCallback = function (item, items) {
非常感谢您的帮助。谢谢您的
i
循环变量是全局变量,因此它在两个函数中共享
按如下方式更改循环的每个:
var items = ['1', '2', 'callback', '4'];
var testCallback = function (item, items) {
var outputArray = [];
if (item == 'callback') {
for (i = 0; i < items.length; i++) {
outputArray.push(testCallback('5', items));
console.log(outputArray);
};
} else {
outputArray.push(item);
};
return outputArray.join(',');
};
var testFunction = function (items) {
var output = '';
for (i = 0; i < items.length; i++) {
console.log(i);
output += testCallback(items[i], items);
};
console.log(output)
};
testFunction(items);
for(变量i=0;i
最终输出将如预期的那样为125,5,5,54
。您的i
循环变量是全局变量,因此它在两个函数中共享
按如下方式更改
循环的每个:
var items = ['1', '2', 'callback', '4'];
var testCallback = function (item, items) {
var outputArray = [];
if (item == 'callback') {
for (i = 0; i < items.length; i++) {
outputArray.push(testCallback('5', items));
console.log(outputArray);
};
} else {
outputArray.push(item);
};
return outputArray.join(',');
};
var testFunction = function (items) {
var output = '';
for (i = 0; i < items.length; i++) {
console.log(i);
output += testCallback(items[i], items);
};
console.log(output)
};
testFunction(items);
for(变量i=0;i
最终输出将如预期的那样为125,5,5,54
。@TinyGiant,我是游戏!@TinyGiant,我是游戏!