MDN声明 Javscript中有两个操作符具有最高优先级:
foo.barnew Foo()我通常明确地将两者分开:(new Date()).toString()
但我经常看到它们两者合二为一:new Date().toString()
根据这个答案,第二种方式起作用的原因在于,当两个运算符具有相同的优先级时,它是第二个运算符的关联性.在这种情况下,成员运算符是左关联的,这意味着new Date()首先评估.
但是,如果是这样的话,为什么会new Date.toString()失败呢?毕竟new Date是只是语法糖的new Date().上述论点说它应该有用,但显然不行.
我错过了什么?