Здравствуйте. Имеется некая функция:
function db_prepare(table, columns){
var weight = 0;
var is = Core.dbcfg_tables.indexOf(table);
if(is){
weight = 1;
}
if(columns != undefined){
var i;
for(i in columns){
i = columns[i].column;
try{
if(Core.dbcfg_structures[table].columns.indexOf(i) != undefined){
if(weight > 0){
weight = 2;
}else{
weight = 1;
}
}else{
if(weight > 0){
weight = 1;
}else{
weight = 0;
}
}
}catch(Ex){
if(weight > 0){
weight = 1;
}else{
weight = 0;
}
}
}
}
if(columns != undefined){
if(weight < 2){
return false;
}else{
return true;
}
}else{
if(weight < 1){
return false;
}else{
return true;
}
}
}
Мне отладчик упорно твердит, что в ней происходит переполнение стека (скорее всего, создается вечный цикл), но никак не возьму в толк -- в чем конкретно здесь проблема. Голова после продуктивной ночи отказывается уже думать.
Заранее спасибо за помощь.