返回JavaScript中的行号

时间:2014-02-08 14:37:04

标签: javascript

我想在代码中返回行号,例如我想在第33行写console.log('SomeCode');时返回33。

我如何在JavaScript中执行此操作?

我用Google搜索了一下,我找到了这段代码:

try{
  throw new Error('Buck stops here')
}catch(e){
  console.log( e.line)
}

但我不想在我的代码中使用任何try catch。

2 个答案:

答案 0 :(得分:3)

跳过try / catch并使用Error对象:

var x = new Error("I want the line number");
console.log(x.lineNumber);

有关详情,请访问MDN Docs

另请注意,像lineNumebr这样的属性是在特定的解释器中实现的,并非在所有浏览器中都是通用的。

答案 1 :(得分:-1)

您需要捕获代码中所有未处理的异常。通过这样做,你不需要在其中加入“try-catch”结构。

window.onerror = function myErrorHandler(errorMsg, url, lineNumber) {
    console.log("Error occured: " + errorMsg + " on line " + lineNumber);//or any message
    return false;
}

MDN Reference