Я думаю, что время ожидания больше зависит от количества операторов, чем от времени или эвристики. Вы могли бы пройти долгий путь к увеличению объема, который может обрабатывать ваш код, прежде чем вызывать предупреждение, оптимизируя ваш код для простых вещей, особенно если вы используете вспомогательные API в другой библиотеке, такой как jQuery. Например, измените это:
$.each(arr, function(value) {
// do stuff
});
к этому:
for (var i = 0, l = arr.length; i < l; i++) {
var value = arr[i];
// do stuff
}
Еще один простой способ - кешировать доступ к полям. Если у вас есть два экземпляра «foo.bar», сохраните результат в переменной и используйте его везде, где это имеет смысл.
Очевидно, я понятия не имею, как выглядит ваш код, но держу пари, что вы могли бы многое сделать, чтобы улучшить его, поскольку эти мелочи действительно складываются, когда вы говорите об этой проблеме тайм-аута.