Und zwar habe ich ein Javascript vorliegen mit einer Callback Funktion. Dabei wird ein Array erstellt. Ich wuerde nun gerne die Funktion in eine synchrone umwandeln.
Dann ändere die Methoden »action« und »runGl«, sodass sie synchron arbeiten. Anders kannst du nicht asychronen Code einfach mal in synchronen umwandeln.
Ich vermute, es hat schon seinen Grund, warum da asynchron gearbeitet wird - vermutlich werden I/O-Operationen durchgeführt, die sind üblicherweise und sinnvollerweise asynchron.
Du kannst höchstens asynchron weiterarbeiten, indem du einen Callback an selectArr übergibst, welchen du dort ausführst, wo du »return dataset;« notieren willst.
selectArr: function (fi, ql, paramList, callback) {
...
b.action(function (x) {
x.runGl(ql, paramList, function (x, glObj) {
...
callback(dataset);
}, null);
});
},
form.selectArr(aFi,aGL,params, function (dataList) {
alert(dataList.length);
});
Mathias