为什么我不能这样做:
var fooElement, barElements; if(fooElement = document.getElementById('foo') && barElements = fooElement.getElementsByTagName('bar') && barElements[0] && barElements[0].onclick) { console.log(barElements[0].onclick); }
这也不起作用:
var foo, bar; if(foo = true && bar = true) { console.log('yay'); }
答案 0 :(得分:10)
试试这个(它应该给你一个线索):
var foo, bar;
if((foo = true) && (bar = true))
{
console.log('yay');
}
答案 1 :(得分:2)
检查操作员优先顺序,使用
if((foo = true) && (bar = true))
{
alert(foo);
}
UPD:不要忘记以下代码不会将bar
设置为true,因为&&是Short Circuit
运算符
if((foo = false) && (bar = true))
{
alert(foo);
}