在用javascript调用函数时,我们通常通过myFunction()调用它(myFunction是随机函数),但是在btn.onclick = bgChange下面给出的代码中不带()时,这怎么可能?它不应该返回函数描述吗?
var btn = document.querySelector('button');
function random(number) {
return Math.floor(Math.random()*number);
}
function bgChange() {
var rndCol = 'rgb(' + random(255) + ',' + random(255) + ',' + random(255) + ')';
document.body.style.backgroundColor = rndCol;
}
btn.onclick = bgChange;
答案 0 :(得分:2)
btn.onclick = bgChange;
不调用函数,它添加了点击处理程序(回调)。当用户单击按钮时,它将调用:btn.onclick();
-将调用存储在btn.onclick
属性中的处理程序。您的情况将与呼叫bgChange();