源映射语法 - 散列或 at 符号

Source map syntax - hash or at-sign

我知道我已经看到源映射以多种方式完成,但没有找到太多关于哪个是首选、更好支持或更多的信息 recent/future-proof

//@ sourceURL=foo.js

//# sourceURL=foo.js

哪一个,哪个?这有什么区别?

使用:

//# sourceURL=foo.js

原始源映射规范使用'@',但这与IE<11中的'conditional compilation'(用@cc_on激活)冲突,在注释中运行代码,会导致错误类型:

'foo' is undefined

尝试将 'js' 属性 从 'foo' 对象分配给 sourceURL 变量时。 (有关 @cc_on 工作原理的详细信息,请参阅 https://msdn.microsoft.com/library/8ka90k2e(v=vs.94).aspx)。

因此规范改为使用“#”。

来源: https://developers.google.com/web/updates/2013/06/sourceMappingURL-and-sourceURL-syntax-changed?hl=en