JavaScript sync and async(同步和異步)


推薦四篇文章:

一個重要前提:JavaScript 是單線程的,並且只有一個主線程。

我們常說的 JavaScript 異步通常指的是 ajax,准確的來說,它並不是 JavaScript 中的異步,當 JavaScript 執行 ajax 的時候,會讓瀏覽器開啟一個線程進行執行,執行完成之后會有個回調函數,然后瀏覽器會告訴 JavaScript:“我 ajax 執行完了,你該執行回調函數了。”

看一段示例 JavaScript 代碼:

$(document).ready(function () {
    var index = 1;
    console.log(1);

    var response = $.ajax({
        type: "get",
        url: '/ajax/get2',
        async: false
    }).responseText;
    console.log(2);

    $.ajax({
        url: '/ajax/get1',
        type: 'get',
        dataType: 'text',
        success: function (data) {
            console.log(3);
        }
    });

    search();
});

function search() {
    console.log(4);
}

輸出結果:

1
2
4
3

執行示意圖:


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM