我可以创建一个依赖于异步调用的javascript getter吗?

我可以创建一个依赖于异步调用的javascript getter吗?,javascript,Javascript,我有大量其他人的代码,很抱歉,由于社会原因无法重构。目前,服务器为该代码生成一个变量,并通过将其填充到脚本块中与页面一起交付。不幸的是,出于性能原因,我现在希望将此变量的创建推迟到页面加载之后,如果我可以完全跳过创建变量,那就更好了 这是javascript的一个由来已久的“如何阻止?”问题,但由于我无法重构代码,所以我不能直接用承诺替换变量的每个实例 考虑到关于阻塞Javascript的其他问题往往会得到解答,我不认为在ajax调用完成之前找到一种生成getter块的方法是正确的答案。我愿意接

我有大量其他人的代码,很抱歉,由于社会原因无法重构。目前,服务器为该代码生成一个变量,并通过将其填充到脚本块中与页面一起交付。不幸的是,出于性能原因,我现在希望将此变量的创建推迟到页面加载之后,如果我可以完全跳过创建变量,那就更好了

这是javascript的一个由来已久的“如何阻止?”问题,但由于我无法重构代码,所以我不能直接用承诺替换变量的每个实例

考虑到关于阻塞Javascript的其他问题往往会得到解答,我不认为在ajax调用完成之前找到一种生成getter块的方法是正确的答案。我愿意接受所有建议,但我希望这是一个具体的问题

多谢各位

编辑:示例。这是我摸不着的代码,我也摸不着它:

if (globalObject.someVariable) {
  doStuff();
} else {
  doOtherStuff();
}
以下是服务器在页面中放置的内容:

<script type='text/javascript'>
jQuery.extend(globalObject, {
  "someVariable" : true;
}
</script>

extend(globalObject{
“someVariable”:true;
}

我可以触摸它。我可以随意创建变量。这个示例只显示true或false,但生成该true或false是我页面加载时间的20%的隐喻。页面中需要显示变量的所有部分都已正常失败,因此告诉他们“等待此变量完成加载”并不成问题我只是不知道怎么做,因为我无法触及代码中最适合更改它的部分。

加载JSONp文件
ondocumentready
,或者在需要时加载它。

听起来像是在使用JSONp,这很好。发送请求时必须指定回调名称,不能延迟。这不应该是I假设你可以生成一个随机名称。你能告诉我们为什么你认为你需要推迟它吗?你可以使用XMLHTTPRequest而不是JSONp。这个问题太模糊了。请给出一些具体的例子。听起来像是你试图在异步设置中添加阻塞I/O。如果这是你重构的重点,我会建议你t您与其他开发人员进行了很好的交谈。因此您将得到以前的“您不能阻止javascript”答案。不,如果不修改使用异步值的代码,您就不能使用异步值。@Tarbox:回调和承诺不会阻止。