Javascript 在循环中调用时使子进程等待

Javascript 在循环中调用时使子进程等待,javascript,asynchronous,child-process,Javascript,Asynchronous,Child Process,我想将一些存储在数组中的输入文件提供给ffmpeg子进程,但它需要异步,因为我想捕获std.err live。但是,我需要一次输入一个输入,等待前一个输入完成。我认为我需要使用承诺或异步等待,但我无法解决如何使用。我的代码(简化)是: var-inputArray=['“+”第一个文件“+”,“+”第二个文件“+”,“+”第三个“+”]; var spawn=require('child_process')。spawn; 对于(i=0;i var inputArray =['"'+&

我想将一些存储在数组中的输入文件提供给ffmpeg子进程,但它需要异步,因为我想捕获std.err live。但是,我需要一次输入一个输入,等待前一个输入完成。我认为我需要使用承诺或异步等待,但我无法解决如何使用。我的代码(简化)是:

var-inputArray=['“+”第一个文件“+”,“+”第二个文件“+”,“+”第三个“+”];
var spawn=require('child_process')。spawn;
对于(i=0;i
 var inputArray =['"'+"firstFile"+'"' ,'"'+"secondFile"+'"' ,'"'+"third"+'"' ];
 var spawn = require('child_process').spawn;
 for(i=0;i<inputArray.length;i++){
 child = spawn("ffmpeg",["-y", "-i",inputArray[i],+i+".ts"],{ shell: true});
 child.stderr.on('data', function (fdata) {
 var datastring = fdata.toString(), lines = datastring.split(/(\r?\n)/g);
    for (var b=0; b<lines.length; b++) {
        document.getElementById("show").innerHTML = lines[b];
    }
    });
    child.on('exit',  function (code) {
        console.log("code "+i+" "+ code);
 });
 }