javascript - 我如何创建一个函数,以便编程行将等到它完成并移动到 javascript 中的下一行

标签 javascript html

我正在使用 Javascript 创建 HTML5, 但有时代码正在执行下一行语句 在当前行完成之前,

例如, 我正在将图像传递给 Javascript 中的对象, 但是在对象拥有图像之前就已经执行了下一条语句, 所以有时物体没有图像,但有时却有,

所以在两行之间我需要分配诸如回调或等待函数之类的东西, 但我不知道怎么办

var image=new Image();
ws.send("complete");

最佳答案

Javascript(大部分)是异步的,这是一件好事。例如,您不想在等待图像时阻塞 UI。

图像完成后使用以下命令执行 ws.send:

var image = new Image();
image.onload = function()
{
 ws.send("complete");
}
image.src = 'image.jpg';

如果您执行此同步操作,整个程序将被阻塞,而您不希望这样。

对于回调,您可以将一个函数作为参数传递给您的函数。例如:

function doSomething(callback)
{       
    callback();
}

doSomething(function()
{
 console.log('im done!');
});

关于javascript - 我如何创建一个函数,以便编程行将等到它完成并移动到 javascript 中的下一行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10682169/

相关文章:

javascript - 使用延迟更改图像

javascript - jQuery 在切换期间更改 'a' 标签的属性

Javascript/CSS 幻灯片 : Using transparencies highlights flaws I don't know how to fix

javascript - 将 JavaScript 函数参数转换为 php 变量

javascript - 在 knockout.js 中选择下拉列表中的绑定(bind)选项和 optionsText

html - 搜索栏上方的额外空白

javascript - 由于死域,是否可以重新路由预先存在的图像链接?

javascript - 将不同的图像强制设置为相同的高度,以便组合宽度填充固定的 div

javascript - 通过单击任意点上的 div 滚动到特定的 div

javascript - IE8枚举数组找到原型(prototype)的索引