为什么在这段代码中有反斜杠?
我刚刚在javascript中遇到了这一行代码:
Math.round(someVariable*100)
这不应该是简单的:
Math.round(someVariable*100)
我查了一下,都似乎给了我相同的结果。 你有什么理由为什么它用反斜杠编码?
除非该行以某种方式被/*
和*/
包围,否则这不是有效的Javascript :-)
ECMAScript规范仅在字符串(包括JSONStrings)和正则表达式的上下文中提到了反斜杠。 如果您使用以下HTML文件:
<!DOCTYPE html>
<html>
<body>
<p id="demo">Click the button.</p>
<button onclick="myFunction()">Try it</button>
<script>
function myFunction() {
document.getElementById("demo").innerHTML = Math.round(2.57*10);
}
</script>
</body>
</html>
你会发现大多数浏览器都会报错:
Firefox 24esr: SyntaxError: illegal character @ ...
Chrome 31 : Uncaught SyntaxError: Unexpected token ILLEGAL
IE 8 : Invalid character
这就是我在我的主要开发盒上的所有功能。
实际上,由于Math.round()
返回一个值,你应该以某种方式使用它,即使它有效,该语句也是无用的。 这可能是你没有提供的这个问题的一些额外的上下文。
这可能是因为您的Javascript解释器的特定实现与它所接受的内容不相容,在不知道您使用的实际解释器的情况下很难辨别。 但是,如果是这样的话,我会认真考虑使用它。 实现之间存在相对较小的差异,但是它们都违反了语言规范的最基本位。
你需要给我们更多的信息,但是我会看到*的原因是会逃避一个正则表达式*。 你确定这不是一些字符串或正则表达式查询扫描的一部分?
是的,那会让我困惑,因为任何一个角色都会在数学和数学之间出现。
这是我能想到的唯一想法,其中有一个逃脱的星号(*)。
链接地址: http://www.djcxy.com/p/80923.html