Chrome 是否支持错误对象上的 lineNumber 属性?

Does Chrome support the lineNumber property on error objects?

MDN 声称 Chrome 支持非标准 属性 Error.prototype.lineNumber "On error object in handled errors."。我摆弄了一下,但无法验证这一点。

try
{
  throw new Error;
}
catch (error)
{
  alert('lineNumber is ' + error.lineNumber);
}

当 运行 上面的代码片段时,只有 Firefox 将 error.lineNumber 设置为数值。 Safari 使用类似的非标准 属性 error.line,而 Chrome 似乎根本没有任何类似的功能。我知道行号在 stack 中,如果你解析它,并且有库可以提取它,但不清晰困扰着我。

MDN 文档是否过时或者我在这里遗漏了什么?

我认为您在这里没有遗漏任何内容。如果 V8(Chrome 的 JavaScript 引擎)在某个阶段支持它,它目前似乎肯定不支持,所以我猜这属于 MDN 的“......未来可能会改变行为”或者,请记住 MDN 是 collaboratively-edited,Chrome 支持它可能总是错误的。

正如 MDN 页面所说,lineNumber 或类似的东西是 not in the spec

鉴于我们都没有看到任何迹象表明 V8 支持它,我已经更正了 MDN 文章。