Показать сообщение отдельно
  #9 (permalink)  
Старый 02.01.2013, 22:36
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,124

Lesya,
Вариант...
function balance(a) {
    var b;
    b = a;
    a = a.replace(/(\u0028)[^\u0028]*?$/, function (a) {
        return a = a.replace(/\u0028(.*?)\u0029/, function (a) {
            return eval(a)
        })
    });
    b != a && (a = balance(a));
    return !/[\u0028\u0029]/.test(a) ? eval(a) : !1
};
alert(balance("(((1+2)+3)*10-(3-1))/10")+"\n"+balance("(((1+2)+3)*10)-(3-1))/10"))
Ответить с цитированием