异步的 JavaScript
- 上一页 JS 回调
- 下一页 JS Promise
"I will finish later!"
Funshonin da a raba gaba kuma ke gaba tare da funshonin mici ne gaba (asynchronous).
Shiyyar jitu ne JavaScript setTimeout()
Gaba JavaScript
Shiyyar da aka kaiya bayan gaba a ita baya ta kaiyance.
Wanda ya'a kaiwace funshonin na gaba dona bayan gaba.
实例
function myDisplayer(some) { document.getElementById("demo").innerHTML = some; } function myCalculator(num1, num2, myCallback) { let sum = num1 + num2; myCallback(sum); } myCalculator(5, 5, myDisplayer);
在上面的例子中,myDisplayer
Shiyyar funshonin ne.
Wanda ya'a kaiwa abin da a raba gaba. myCalculator();
。
Duba da a raba gaba a gaba cikin kai tsaya.
Shiyyar jitu ne JavaScript setTimeout();
。
Kaiwa gudan a suna raba.
在使用 JavaScript 函数 setTimeout();
Kai, a kaiya zabi funshonin na gaba bayan gudan:
实例
setTimeout(myFunction, 3000); function myFunction() { document.getElementById("demo").innerHTML = "I love You !!"; }
在上面的示例中,myFunction
Wanda ya'a kawo gaba.
函数(函数名)作为参数传递给 setTimeout();
。
3000 是超时前的毫秒数,所以 3 秒后会调用 myFunction()
。
Kai a ba'a raba funshonin gaba gida, kaiwa a kaiya gudan.
Kai: setTimeout(myFunction, 3000);
Dima: setTimeout(myFunction(), 3000);
Iyi yin da ba nimi na gudan funshonin ya'a (myFunction) sada ba'a, a ka iya raba funshonin na gudan kifaye:
实例
Kai suna gudan (setTimeout(function() { myFunction("I love You !!!"); }, 3000)); function myFunction(value) { document.getElementById("demo").innerHTML = value; }
在上面的例子中,function(){ myFunction("I love You !!!"); }
用作回调。它是一个完整的函数。完整的函数作为参数被传递给 setTimeout()。
3000 是超时前的毫秒数,所以 3 秒后会调用 myFunction()
。
等待间隔:
在使用 JavaScript 函数 setInterval()
时,可以指定每个间隔执行的回调函数:
实例
setInterval(myFunction, 1000); function myFunction() { let d = new Date(); document.getElementById("demo").innerHTML= d.getHours() + ":" + d.getMinutes() + ":" + d.getSeconds(); }
在上面的例子中,myFunction
用作回调。
函数(函数名)作为参数传递给 setInterval()
。
1000 是间隔之间的毫秒数,因此 myFunction()
将每秒调用一次。
等待文件
如果您创建函数来加载外部资源(如脚本或文件),则在内容完全加载之前无法使用这些内容。
这是使用回调的最佳时机。
此例加载一个 HTML 文件 (mycar.html
Dake a kaiwa dake a HTML fiilen (
Kaiwa dake:
function myDisplayer(some) { document.getElementById("demo").innerHTML = some; } function getFile(myCallback) { let req = new XMLHttpRequest(); req.open('GET', "mycar.html"); req.onload = function() { if (req.status == 200) { myCallback(this.responseText); } myCallback("Error: " + req.status); } } req.send(); } getFile(myDisplayer);
在上面的示例中,myDisplayer
用作回调。
函数(函数名)作为参数传递给 getFile()
。
以下是 mycar.html
的副本:
mycar.html
<img src="img_car.jpg" alt="Nice car" style="width:100%"> <p>A car is a wheeled, self-powered motor vehicle used for transportation.</p> <p>Most definitions of the term specify that cars are designed to run primarily on roads, to have seating for one to eight people, to typically have four wheels.</p> <p>(Wikipedia)</p>
- 上一页 JS 回调
- 下一页 JS Promise