Javascript 我不知道';我不明白为什么这个函数';s的输出是1

Javascript 我不知道';我不明白为什么这个函数';s的输出是1,javascript,arrays,for-loop,matrix,Javascript,Arrays,For Loop,Matrix,这是一个代码,用于移动(3*3)矩阵中的行 当我在控制台中登录arrtY时,我只看到1。这里有一个解决方案 const transY =(arr)=> { const arrtY = []; function rowpush(i) { for (let j = 0; j < 3; j++) { arrtY.push(arr[3*i+j]); } } rowpush(2); rowpush

这是一个代码,用于移动(3*3)矩阵中的行

当我在控制台中登录arrtY时,我只看到1。

这里有一个解决方案

const transY =(arr)=> {
    const arrtY = []; 
    function rowpush(i) {
        for (let j = 0; j < 3; j++) {
            arrtY.push(arr[3*i+j]);
        }
    }
    rowpush(2);
    rowpush(0);
    rowpush(1);
    return arrtY;
}
const transY=(arr)=>{
常数=[];
功能行推送(i){
for(设j=0;j<3;j++){
arrtY.push(arr[3*i+j]);
}
}
rowpush(2);
rowpush(0);
rowpush(1);
回程到达;
}
可能的解决方案:

函数变换(arr){ var-res=[]; 对于(变量i=6;分辨率长度<9;i=(i+1)%9) 再推(arr[i]); 返回res; } var-arr=[1,2,3,4,5,6,7,8,9]; log(JSON.stringify(arr)) arr=变换(arr); log(JSON.stringify(arr)) arr=变换(arr);
console.log(JSON.stringify(arr))我看到的输出是:
Uncaught ReferenceError:arr1未定义
能否提供一个可运行的代码段来说明问题?删除前两个
return
s.@Igor谢谢先生。但是,结果数组的长度为12个条目,并且条目的顺序不符合预期。我想我可以解决这个问题,但任何建议都会有帮助。

1  2  3       7  8  9       4  5  6
4  5  6  ==>  1  2  3  ==>  7  8  9 ==>  [...]
7  8  9       4  5  6       1  2  3
const transY =(arr)=> {
    const arrtY = []; 
    function rowpush(i) {
        for (let j = 0; j < 3; j++) {
            arrtY.push(arr[3*i+j]);
        }
    }
    rowpush(2);
    rowpush(0);
    rowpush(1);
    return arrtY;
}