javascript - Chrome console.log 矛盾

标签 javascript console.log

我有一个简单的类(class)

function TrueNinja() {
   this.vanish = function() { return this; };
}

由此创建一个新对象

var someNinja = new TrueNinja();

当我在 Chrome 中执行以下操作时,我得到两个不同的输出

console.log(someNinja instanceof TrueNinja); // i get true
console.log("someNinja: " + someNinja instanceof TrueNinja); //i get false

为什么? :-( 第一个语句是正确的输出,因为 someNinja 是 TrueNinja 的一个实例...但为什么我在下一个语句中得到 false?

最佳答案

这是由于运算符优先级的原因,+instanceof 之前计算。

关于javascript - Chrome console.log 矛盾,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22384803/

相关文章:

javascript - 添加到 Canvas 后更改文本

javascript - 函数链中的 D3 console.log

javascript - 为什么 javascript console.log(1++ ""+ 3);句子返回 4 而不是 "1 3"?

javascript - Vuex getter 在数组更新后不更新值

javascript - 如果结果已知,js 是否会跳过语句?

javascript - 覆盖console.log以格式化数字

javascript - 带有 typescript : what determines how an object is rendered?的vscode调试器

javascript - 使用NextJS使用Class Components和getInitialProps进行SSR,render方法有未定义的数据

javascript - 如何获取条形图宽度(以像素为单位)

javascript - 如何解析 JQuery Ajax 中的 Web 服务 url?