Start functie als andere functie klaar is
Ben een beetje het stoeien met JavaScript en wil graag dat functie B pas na functie A word gestart.
Ik heb een klein opzetje gemaakt
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
function1(function() {
function2();
});
function function1(callback){
var mLog = document.getElementById("log");
var w, df, delta1, alfa;
function chi_power(n) { return n; }
var calc_power = 0, power = 100000000;
function calculate(n) {
if (n<10000000000000 && calc_power<power) {
calc_power=chi_power(n,w,df,delta1,alfa);
var message="n="+n+"<br>";
progress(mLog,message);
// proceed with the loop
setTimeout(function () { calculate(n*2); }, 0);
}
}
function progress(mLog, message) {
mLog.innerHTML += message;
}
calculate(1);
callback();
}
function function2(){
alert('Functie 1 is klaar');
}
function2();
});
function function1(callback){
var mLog = document.getElementById("log");
var w, df, delta1, alfa;
function chi_power(n) { return n; }
var calc_power = 0, power = 100000000;
function calculate(n) {
if (n<10000000000000 && calc_power<power) {
calc_power=chi_power(n,w,df,delta1,alfa);
var message="n="+n+"<br>";
progress(mLog,message);
// proceed with the loop
setTimeout(function () { calculate(n*2); }, 0);
}
}
function progress(mLog, message) {
mLog.innerHTML += message;
}
calculate(1);
callback();
}
function function2(){
alert('Functie 1 is klaar');
}
Maar toch word de alert al eerste gegeven, wat eigenlijk pas na functie 1 zou mogen gebeuren.
Gewijzigd op 17/06/2022 10:19:21 door - Ariën -
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
function1(function() { function2(); });
function function1(callback)
{
var mLog = document.getElementById("log");
var w, df, delta1, alfa;
function chi_power(n)
{
return n;
}
var calc_power = 0, power = 100000000;
function calculate(n)
{
if (n<10000000000000 && calc_power<power)
{
calc_power=chi_power(n,w,df,delta1,alfa);
var message="n="+n+"<br>";
progress(mLog,message);
// proceed with the loop
setTimeout(function () { calculate(n*2); }, 0);
}
}
function progress(mLog, message)
{
mLog.innerHTML += message;
}
calculate(1);
callback();
}
function function2()
{
alert('Functie 1 is klaar');
}
function function1(callback)
{
var mLog = document.getElementById("log");
var w, df, delta1, alfa;
function chi_power(n)
{
return n;
}
var calc_power = 0, power = 100000000;
function calculate(n)
{
if (n<10000000000000 && calc_power<power)
{
calc_power=chi_power(n,w,df,delta1,alfa);
var message="n="+n+"<br>";
progress(mLog,message);
// proceed with the loop
setTimeout(function () { calculate(n*2); }, 0);
}
}
function progress(mLog, message)
{
mLog.innerHTML += message;
}
calculate(1);
callback();
}
function function2()
{
alert('Functie 1 is klaar');
}
function1 geeft de hele function2 door.
En al die andere functies zitten in function1.
Vast niet de bedoeling.
@SanThe: Hé, ouwe vriend! :-) Keertje borrelen? (Zie je PM)
In JavaScript zijn "inner" functions geen probleem, dat mag gewoon.
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title></title>
</head>
<body>
<pre id="log"></pre>
<script>
var mLog = document.getElementById("log");
function progress(message) {
mLog.innerHTML += message;
}
function function1(callback) {
var w, df, delta1, alfa;
var calc_power = 0,
power = 100000000;
function chi_power(n) { return n; }
function calculate(n) {
if (n < 10000000000000 && calc_power < power) {
calc_power = chi_power(n, w, df, delta1, alfa);
progress('n=' + n + '<br>');
calculate(n * 2);
}
}
calculate(1);
callback();
}
function function2() {
progress('calling function 2' + '<br>');
}
function1(function2);
</script>
</body>
</html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title></title>
</head>
<body>
<pre id="log"></pre>
<script>
var mLog = document.getElementById("log");
function progress(message) {
mLog.innerHTML += message;
}
function function1(callback) {
var w, df, delta1, alfa;
var calc_power = 0,
power = 100000000;
function chi_power(n) { return n; }
function calculate(n) {
if (n < 10000000000000 && calc_power < power) {
calc_power = chi_power(n, w, df, delta1, alfa);
progress('n=' + n + '<br>');
calculate(n * 2);
}
}
calculate(1);
callback();
}
function function2() {
progress('calling function 2' + '<br>');
}
function1(function2);
</script>
</body>
</html>
Gewijzigd op 22/05/2022 19:01:14 door Jan Koehoorn
Jan Koehoorn op 22/05/2022 18:55:53:
@SanThe: Hé, ouwe vriend! :-) Keertje borrelen?
@SanThe: Hé, ouwe vriend! :-) Keertje borrelen?
Eigenlijk wordt het toch eens tijd dat er een PHPhulp meeting moet komen. ;-)
Moet wel met de trein bereikbaar zijn hahaha!!
Hebben we in een (ver) verleden een aantal keer gedaan. Is hartstikke leuk, je ziet eindelijk de gezichten die bij de namen horen.