Javascript 未能在两者之间移动元素?

Javascript 未能在两者之间移动元素?,javascript,html,algorithm,javascript-objects,p5.js,Javascript,Html,Algorithm,Javascript Objects,P5.js,我一直在尝试用Blacktracking算法解决数独问题,一切都很好,调用了canvar,我能够看到数字,但数字没有移动,即逻辑没有执行 current.i==0是我得到错误的地方!即使我已经为num声明了一个sperate变量,这个问题也没有得到解决。只有当我删除.numcurrent==0时,它才不会显示任何错误,但数字仍然没有移动 var cell=[]; var堆栈=[]; var数独=[2,3,0,9,4,0,6,7,0, 8,0,0,3,2,5,9,1,4, 9,0,0,7,6,0

我一直在尝试用Blacktracking算法解决数独问题,一切都很好,调用了canvar,我能够看到数字,但数字没有移动,即逻辑没有执行
current.i==0是我得到错误的地方!即使我已经为num声明了一个sperate变量,这个问题也没有得到解决。只有当我删除.num
current==0
时,它才不会显示任何错误,但数字仍然没有移动

var cell=[];
var堆栈=[];
var数独=[2,3,0,9,4,0,6,7,0,
8,0,0,3,2,5,9,1,4,
9,0,0,7,6,0,3,2,0,
1,0,0,0,0,0,7,9,2,
5,0,3,2,1,0,4,8,6,
4,0,0,6,8,0,5,3,1,
7,0,0,1,0,0,0,0,9,
6,5,9,8,7,2,1,4,3,
3,0,0,0,9,0,0,0,7];
无功电流;
var数=1;
函数设置(){
createCanvas(450450);
var a=0;
var b=0;

对于(var i=0;i而言,错误非常直接。
current=cell[0];
变得未定义,因为您将
cell
定义为空数组,并且此后未对其进行操作

从我目前观察到的情况来看,代码的许多部分在逻辑上不起作用,例如

same Column(current.i,number) && ! sameRow(current.i,number) && ! sameSquare(current.i,number)
除非您有一个单独的js文件包含这些函数,否则在执行时肯定会给您带来一个错误(不是因为执行没有到达该行)

另一个是

current = cell[current+1];
如果
当前
变量用于存储单元格对象,则向其添加1是没有意义的,反之亦然

现在我相信这就是设置功能的含义:

function setup(){
    createCanvas(450,450);
    var a=0;
    var b=0;
    for(var i=0;i<81;i++){
        if(a%9==0 && i!=0){
            b = b+50;
            a = 0;
        }
        cell[i] = new Cell(a,b,i,sudoku[i]); //changed each[i] to cell[i], also renamed the 'each' class
        a = a+50;
    }
    current = cell[0];
}
函数设置(){
createCanvas(450450);
var a=0;
var b=0;
对于(var i=0;i
function setup(){
    createCanvas(450,450);
    var a=0;
    var b=0;
    for(var i=0;i<81;i++){
        if(a%9==0 && i!=0){
            b = b+50;
            a = 0;
        }
        cell[i] = new Cell(a,b,i,sudoku[i]); //changed each[i] to cell[i], also renamed the 'each' class
        a = a+50;
    }
    current = cell[0];
}