0

假设我正在加载一个包含以下代码的页面:

<script>
    function functionAlert() {
        alert(window.myProperty);
    }

    function functionSetProperty() {
        window.myProperty = "hello!";
    }
    window.addEventListener('load', functionAlert, false);
    functionSetProperty();
</script>

functionAlert之前调用的竞态条件是否可能functionSetProperty,在这种情况下会显示警报undefined

4

1 回答 1

3

不,这是不可能的。基于浏览器的 JavaScript 是单线程的,它会阻止浏览器在执行时处理事件。

(我在野外看到了一些例外,但它们都以 XmlHttpRequest 为中心。)

于 2012-10-07T05:00:50.600 回答