下面我尝试创建一个 Object 的子类,其行为类似于 Object 在使用“new”创建实例方面的行为。我当然会向我的子类添加更多方法,但下面显示了我从构造函数中调用超级构造函数的问题。
为什么我的类 Sub 的实例不像普通对象那样具有字段“x”,当使用“new”和相同的参数以相同的方式创建时?
class Sub extends Object
{ constructor (anObject)
{ super(anObject);
}
}
var ob = new Object ({x: 123} );
var sub = new Sub ({x: 123} );
console.log( ob.x ); // -> 123
console.log( sub.x); // -> undefined
Run Code Online (Sandbox Code Playgroud) 我尝试在Node.js v8.9.4中计算这个表达式:
`${ xxx 123 }`
Run Code Online (Sandbox Code Playgroud)
它抛出错误
模板表达式中缺少 }
我知道上面的表达式应该会导致错误,因为里面的内容${}不是有效的 JavaScript。但为什么错误消息声称}缺少 a 呢?我可以清楚地看到一个开口
{和一个关闭}。为什么说}
缺少a?