[英]Uncaught SyntaxError: Unexpected token instanceof (with Chrome Javascript console)
输入Chrome js控制台时,我对以下代码感到惊讶:
{} instanceof Object
导致此错误消息:
未捕获的SyntaxError:意外的标记instanceof
任何人都可以告诉我为什么会这样,以及如何解决它?
例如 ,语法是:
RelationalExpression instanceof ShiftExpression
根据ECMA-262§11.8 。
标点符号{
在语句的开头被视为块的开头,因此以下}
关闭块并结束语句。
下面的instanceof
运算符是下一个语句的开头,但它不能在开头,因为它必须以RelationalExpression开头,因此解析器会出错。
您需要通过在语句的开头添加其他内容来强制{}
被视为对象文字,例如
({}) instanceof Object
{}
,在该上下文中,是一个块 ,而不是一个对象文字。
您需要更改上下文(例如,将其包装在(
和)
)以使其成为对象文字。
({}) instanceof Object;
如果你试试这个:
var a = {}
a instanceof Object
输出true
,这是预期的输出。
但是,在你的情况下
{} instanceof Object
以上并不是真的。
后者是不相同的第一个。 在第一种情况下,我们创建一个对象文字,而在第二种情况下,我们不创建。 因此,您收到此错误。
尝试
var p = {}
p instanceof Object
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.