JavaScript之你不知道的那些事(一)
2022-02-14 本文已影响0人
_花
一、如何检测某个键是否在某个人对象里?
方法有两种,方法一:
var obj = {a:111,b:222};
console.log('a' in obj);
方法二:
var obj = {a:111,b:222};
console.log(obj.hasOwnProperty('a'))
二者之间的区别是:
如果指定的属性在指定的对象的原型链中,则in 运算符仍返回true,而hasOwnProperty()方法会忽略掉那些从原型链上继承到的属性。
二、if(a == 2 && a == 3){ console.log(a)}else{console.log("error")}输出为何?
var i =2;
Number.prototype.toString = function(){
return i++
}
if(a == 2 && a == 3){ console.log(a)}else{console.log("error")}
结果为:Number(23)
三、&& 和 ||
c = a && b;
若a 为 0,false,"",undefined,null c = a;
若a为除上述外得其他值,则c = b;
c = a || b;
若a为除上述外得其他值,c = a;
若a为上述值,则c = b;