为什么 {}.prop 会报错? --<Javascript 学习笔记 11>

126 阅读1分钟

图片.png

这是我刚才截的图,我就很奇怪啊,奇怪了很久,因为同样的代码放在 Node.js 的 REPL 中并不会报错。

我们看以下代码:

{
    // Sample code
}

显而易见,这是一个代码块,但是如果我们把换行去掉:

{}

你还会认为这是一个代码块吗?你一定会认为这是一个 Object 。

但对于解释器来说,两者没有区别,后者仍然是一个代码块,只不过什么功能都没有。

结果显而易见了,但是怎么解决呢?我们只需要加上一个括号:

({}).toString() // [object Object]