我需要在我的php.html页面中加入一些JS,并且我很难尝试调试.我一直在谷歌搜索,但似乎无法找到如何打印行号,如__LINE__在PHP中.有没有办法轻松地实现这个看似有用的壮举?
我遇到的另一个问题是,我正在尝试调试一个script行为不太明显的块,而我需echo要这样做alert一个非常长的字符串var.不幸的是,警报框会自行关闭,大概是因为var字符串有多长.似乎没有任何方法来定义参数,例如alert盒子的高度,宽度等,所以我尝试使用这个hack:
function alertDebug(linesToDisable)
{
var newLinesToDisable = new String();
for (var n = 0; n < linesToDisable.length; n++)
{
if (n % 100 == 0)
newLinesToDisable += "\n";
newLinesToDisable += aString[n];
}
alert( newLinesToDisable );
}
alertDebug( linesToDisable );
Run Code Online (Sandbox Code Playgroud)
但alert完全无法解雇.任何拥有L337 JS技能的人都能帮忙吗?
关于调试/长日志:JavaScriptconsole对象有很多有用的调试方法。您可以在MDN上找到它们。最常见的一种是console.log(newLinesToDisable).
关于行号:通常浏览器还会公开引发错误的行号(堆栈跟踪),但如果您想专门记录行号,您可以尝试
var line = new Error().lineNumber
Run Code Online (Sandbox Code Playgroud)
如果这在您使用的任何环境中都不起作用,您可以尝试:
var stack = new Error().stack
Run Code Online (Sandbox Code Playgroud)
但接下来你必须挖掘整个堆栈跟踪。