在下面的函数上调用 toString() 会在浏览器中返回不同的字符串。我理解这是因为 ECMA-262 15.3.4.2 为每个供应商留出了回旋余地。
除了所有语法外,Chrome 还会返回注释。遗憾的是 Firefox 3.6 忽略了注释。基于 Firefox 的行为,我没有测试过 IE、Opera 或 Safari。
function foo() {
/* comment */
var bar = true;
}
具体来说,我试图将元数据嵌入到函数内的特殊格式的注释块中。稍后将解析函数 toString() 方法的返回值,并将值作为对象返回。
我一直无法找到兼容性表或 toString() 的替代品。社区有什么想法吗?顺便说一句,预处理 JS 文件不是一个选项。:(
非常感谢。:)