在javascript中从return捕获数组
我有一些在javascript中从return捕获数组,javascript,Javascript,我有一些函数,它返回一个数组。这些函数将由另一个函数调用。我的代码似乎不起作用,知道为什么吗 function foo1(){ .. .. var A[]; return A; } function foo2(){ .. .. var B[]; return B; } function catcher(){ c1=foo1(); c2=foo2(); var d=[]; for(var i
函数
,它返回一个数组
。这些函数
将由另一个函数
调用。我的代码似乎不起作用,知道为什么吗
function foo1(){
..
..
var A[];
return A;
}
function foo2(){
..
..
var B[];
return B;
}
function catcher(){
c1=foo1();
c2=foo2();
var d=[];
for(var i = 0; i<a.length; i++){
d.push(a[i],b[i],c[i]);
}
}
函数foo1(){
..
..
var A[];
返回A;
}
函数foo2(){
..
..
var B[];
返回B;
}
函数捕捉器(){
c1=foo1();
c2=foo2();
var d=[];
对于(var i=0;ivar A[]
可能会给您一个javascript错误。使用var A=[]
就像使用var d=[]
一样。这显然也适用于var B[]
此外,您的循环似乎引用了示例代码中不存在的变量-a
、b
和c
-这是问题的一部分吗?我认为除了语法错误之外,没有其他问题。请继续检查此小提琴
函数foo1(){
变量a=[1,2,3,4,5];
返回a;
}
函数foo2(){
var b=[6,7,8,9,10];
返回b;
}
函数init(){
var a1=foo1();
var b1=foo2();
var d=[];
对于(var i=0;i这里有几个问题(以及一些可能出现问题的问题)
首先,您需要真正声明数组,因此不要使用var A[];
而是使用var A=[];
其次,在for
循环中,您正在检查a
数组的length
,如果其他数组中有更多(或更少)对象,这将使代码“中断”
我根据您的示例代码编写了一个示例:
function foo1(){
var A = ['a', 'is', 'here'];
return A;
}
function foo2(){
var B = ['b', 'is', 'here'];
return B;
}
function foo3(){
var C = ['c', 'is', 'here'];
return C;
}
function catcher(){
var a = foo1();
var b = foo2();
var c = foo3();
var ABC = [];
//Run for each array, so that it docent break:
for (var i = 0; i < a.length; i++) {
ABC.push(a[i]);
}
for (var i = 0; i < b.length; i++) {
ABC.push(b[i]);
}
for (var i = 0; i < c.length; i++) {
ABC.push(c[i]);
}
//Print out the result (to verify that it worked):
for(var i = 0; i<ABC.length; i++){
console.log(ABC[i]);
}
}
函数foo1(){
变量A=['A','is','here'];
返回A;
}
函数foo2(){
变量B=['B','is','here'];
返回B;
}
函数foo3(){
var C=['C','is','here'];
返回C;
}
函数捕捉器(){
var a=foo1();
var b=foo2();
var c=foo3();
var ABC=[];
//为每个阵列运行,以便它能够:
对于(变量i=0;i 对于(var i=0;InPoe请忽略所有这些我实际上没有犯这些错误..我只是举了一个例子..!!出于兴趣,我的答案中的哪一部分帮助了你?你不应该在你发布的代码中犯语法错误。这会造成混淆,你是因为语法错误还是其他原因而面临问题。请看我的答案,您接受的答案没有包含代码中所需的重要部分。谢谢,实际上我的代码也起了作用。不过,请不要解释为什么之前它没有起作用。
function foo1(){
var A = ['a', 'is', 'here'];
return A;
}
function foo2(){
var B = ['b', 'is', 'here'];
return B;
}
function foo3(){
var C = ['c', 'is', 'here'];
return C;
}
function catcher(){
var a = foo1();
var b = foo2();
var c = foo3();
var ABC = [];
//Run for each array, so that it docent break:
for (var i = 0; i < a.length; i++) {
ABC.push(a[i]);
}
for (var i = 0; i < b.length; i++) {
ABC.push(b[i]);
}
for (var i = 0; i < c.length; i++) {
ABC.push(c[i]);
}
//Print out the result (to verify that it worked):
for(var i = 0; i<ABC.length; i++){
console.log(ABC[i]);
}
}