我有与这里提出的相同的问题:Checking if a key exists in a JavaScript object? .
但是,我正在寻找一种适用于包括 IE 6+ 在内的所有主要浏览器的方法。我看到的我喜欢的方法是使用in
运算符,这是我以前从未见过的。
我在 google chrome 中尝试了一些不同的东西,似乎可以工作,但我想知道为什么不使用它而不是in
操作符。
以供参考:
var data = {foo : "bar"};
console.log("foo" in data); // true
console.log("bar" in data); // false
我的建议:
var data = {foo : "bar"};
console.log(!!data.foo); // true
console.log(!!data.bar); // false
我的(第二种)方法有什么缺点吗?