调用javascript表达式

调用javascript表达式,javascript,function,expression,execute,Javascript,Function,Expression,Execute,我已经通过开发者工具在chrome中尝试了以下两个javascript函数,但我认为第二个函数会在js解释器到达时被调用,但没有。不知道为什么 var x = function() { console.log("probably not invoked."); } var x = function() { console.log("probably invoked."); }; x(); // I had to do this to invoke the function 测试这一点的原因

我已经通过开发者工具在chrome中尝试了以下两个javascript函数,但我认为第二个函数会在js解释器到达时被调用,但没有。不知道为什么

var x = function() { console.log("probably not invoked."); }

var x = function() { console.log("probably invoked."); };

x(); // I had to do this to invoke the function
测试这一点的原因是我第一次使用XmlHttpRequest时读取了对象的属性名状态,我遇到了一段代码,如下所示,我被告知将执行onreadystatechange函数指针,所以我认为当js解释器到达匿名函数时,将执行匿名函数上的分号

function makeRequest() {
    .....
    xhr.onreadystatechange = function () {
        if (xhr.readyState == 4) {
            document.getElementById("status").innerHTML = (xhr.status == 200) ? "status good" : "status bad";
        }
    };
    xhr.send();

XMLHttpRequest对象将查找存储在
onreadystatechange
中的函数,并在就绪状态更改时调用它

触发被调用函数的是事件触发,而不是赋值本身

这类似于

document.body.onclick = function () { alert("You clicked!"); };

末尾的分号只是您(应该)放在每个JavaScript语句后面的常规分号。

XMLHttpRequest对象将查找存储在
onreadystatechange
中的函数,并在就绪状态更改时调用它

触发被调用函数的是事件触发,而不是赋值本身

这类似于

document.body.onclick = function () { alert("You clicked!"); };

结尾的分号只是您(应该)在每个JavaScript语句后面加上的常规分号。

我从您的回复中更好地理解了关于js函数的内容。非常感谢。从你的回复中,我对我读到的关于js函数的内容有了更好的理解。非常感谢。