En primer lugar habría que agregar una llamada a una función como __checkDebug(); que verificará una variable global (o semi-global) y cuando dicha variable sea verdadera, llame al depurador.
function __checkDebug() {
if (debugme) debugger;
}
todas sus funciones está preocupado acerca de la depuración sería así:
function foo() {
__checkDebug();
//.... whatever foo was gonna do.
}
A continuación, puede ir un poco más allá y dinámicamente decorar funciones mientras que el código se ejecuta de esta manera:
Function.prototype.debug = function(){
var fn = this;
return function(){
if (debugme) debugger;
return fn.apply(this, arguments);
};
};
foo = foo.debug();
ahora cualquier vez que se llame foo llamará a depurador si la variable de depuración es verdadera.
Otra opción sería crear un sistema de compilación de JavaScript que inserte la llamada después de cada declaración de función; esto requiere un analizador de sintaxis, pero si solo está buscando modificar funciones, un tokenizador simple para ese caso de uso es bastante fácil de escribir - Pero te dejaré eso a ti.
Posible duplicado de [Establecer un punto de interrupción de JavaScript en el código - en Chrome?] (Http://stackoverflow.com/questions/10050465/set-a-javascript-breakpoint-in-code-in-chrome) si solo el el título contenía la palabra clave "código" SEO dioses habría gobernado de lo contrario :-) –