谁能看出下面这段代码的作用

function Some(to, a, b){
var c=a+b;
var d;
if(b==0) return;
if(c>=0 && c d = to[a];
if(c for(var lnIndex=a; lnIndex>c; lnIndex--)
to[lnIndex] = to[lnIndex-1];
}else{
for(var lnIndex=a; lnIndex<c; lnIndex++)
to[lnIndex] = to[lnIndex+1];
}
to[c]= d;
}
}

在列表中,将tnIndex的元素移动到相比tnIndex,tnRelativePos所在的位置上。tnRelativePos为正,表示往后,为负表示往前。