Ruby的__LINE__和__FILE__常量的Javascript等效物



我主要使用Ruby编写代码,但偶尔需要浏览器前端的javascript,并使用Chrome控制台调试javascript代码。

有时很难遵循生成输出的代码行,我必须在行的右端交叉检查以查看行号,如果内容很多,这并不容易,而且此行号并不总是与源文件中的行相对应,使用模板时经常存在偏移量。

在 Ruby 中,您有包含源代码文件路径的__FILE__常量和带有正在执行的代码行号的__LINE__常量。

因此,p [__LINE__, "what i want to view"]给了我行号,后跟"我想查看的内容"。有JavaScript/Chrome等效物吗?

目前我使用

console.log(20, "what I want to view")

对于第 20 行的代码,但您可以想象必须进行大量更改。

有JavaScript

/Chrome等效的吗?

恐怕没有等价物。它只是不存在。你提到的行号在你使用时由devtools自动记录console.xyz恐怕是最接近的。


目前我使用

console.log(20, "what I want to view")

对于第 20 行的代码,但您可以想象必须进行大量更改。

FWIW,而不是使用(如您所说)需要更改的行号,请考虑使用不需要更改但易于找到的标记,例如:

console.log("*A*", "what I want to view");

那不需要更新太多。

当然,很可能有日志记录框架做得更好。或者为您的 JavaScript 文件编写一个预处理器,将__FILE____LINE__替换为文件名和行号是微不足道的......(或者也许是一个 Babel 插件,虽然__FILE__可能很棘手;解析阶段保留行号,但由于它甚至可能不知道源来自哪个文件,甚至不知道它是否来自一个文件 [而不是另一个工具的输出]......

最新更新