在浏览器的 JS 控制台中尝试这些:
{}['constructor'] //==> ['constructor']
{}['constructor'] === ['constructor'] //==> false
console.log({}['constructor']) //==> function Object() { [native code] }
评估的第一个表达式返回一个包含单个项目的数组:'constructor'
,但是,第二个表达式似乎通过返回与第一个相矛盾false
。第三个将Object
构造函数记录到控制台。
为什么后两个表达式与第一个不一致?