用字符串确定数组的坐标

时间:2014-05-30 18:29:45

标签: javascript arrays algorithm

标题已经在说了。我需要用字符串确定数组的坐标。 例如:如果我想将值1向右移动两次,我将写入seed变量:"rr"r表示该值将向右移动一个索引。

在此链接中:http://jsfiddle.net/Kike/hVczZ/我会更好地解释。

1 个答案:

答案 0 :(得分:0)

如果可以移动,这是有效的:

for(var t = array.length; t >= 0; t--){
    if(array[t]==1){
        move(t,seed);
        break;
    }
}

function move(index,movements){
    var size=5;
    var x=index % size; 
    var y= Math.floor(index / size);
    for(var i=0;i<movements.length;i++){
        var pos=movements[i];
        if(pos=='r'){
            if(x+1 == size){
                x=0;
                y+=1;
            }else{x+=1;}
        }else if(pos=='l'){
            if(x==0){
                y-=1;
                x=size-1;
            }else{x-=1;}
        }else if(pos=='u'){
            y-=1;
        }else if(pos=='d'){
            y+=1;
        }
    }
    array[index]=0;
    array[size*y+x]=1;
}

console.log(array) // 1 is in fourth position