首页 > 解决方案 > 如何在匿名函数之外访问为 onreadystatechange 定义的函数中的变量数据?

问题描述

<script>
    function responseCreate() {
        var html = '';
        var xhr = new XMLHttpRequest();
        xhr.open("POST", "url", true);
        xhr.setRequestHeader('Content-Type', 'application/json');
        xhr.setRequestHeader("Authorization", "xxxxx");
        xhr.send();
        recs.onreadystatechange = function () {
            if (this.readyState == 4 && this.status == 200) {
                var data = JSON.parse(this.responseText).data;
                for (var i = 0; i < data.length; i++) {
                    html += "<div>" + data[i].Full_Name + "</div>;
                }
            }
        }
        document.getElementById("ResponseView").innnerHTML = html;
    }
</script>

<div id="ResponseView"></div>

当我在匿名函数中对变量“html”进行控制台记录时,它会返回 html,但是当我在匿名函数之外进行控制台登录时,它会返回空数据。有人请帮忙吗?

标签: javascriptscopexmlhttprequestanonymous-functiononreadystatechange

解决方案


推荐阅读