Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/367.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/36.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 未处理的PromisejectionWarning:TypeError:(中间值)不是函数_Javascript_Node.js_Promise - Fatal编程技术网

Javascript 未处理的PromisejectionWarning:TypeError:(中间值)不是函数

Javascript 未处理的PromisejectionWarning:TypeError:(中间值)不是函数,javascript,node.js,promise,Javascript,Node.js,Promise,我试图使用async/await调用函数(findNextOper()),调用时出现以下错误: (node:2748) UnhandledPromiseRejectionWarning: TypeError: (intermediate value) is not a function 我曾尝试在不同的位置添加分号,但没有成功。我不知道如何修理它 //This is where I call the function function regFasiFineLav(pool,oper){

我试图使用async/await调用函数(findNextOper()),调用时出现以下错误:

(node:2748) UnhandledPromiseRejectionWarning: TypeError: (intermediate value) is not a function
我曾尝试在不同的位置添加分号,但没有成功。我不知道如何修理它

//This is where I call the function

function regFasiFineLav(pool,oper){
    return new Promise(async (resolve,reject,) => {
        ...
        let nextOper = await findNextOper(pool,op);
        ...
        resolve();
 })();
};

//This is the function precedeing the one that trigger the error(findNextOper).
//I pasted because maybe it is related in some way

function StringToTime(stringTime){
    return new Promise(async (resolve,reject) => {
        stringTime = stringTime.split(":");
        resolve(parseInt(stringTime[0])*3600 + parseInt(stringTime[1])*60 + parseInt(stringTime));
    })();
};

//This is the function causing the error
function findNextOper(pool,op){
    return new Promise(async (resolve,reject) => {
        let sql_query = "SELECT TOP 1 oper_num FROM jobroute WHERE job = '" + op.job + "' AND suffix = " + op.suffix + " AND oper_num > " + op.oper_num + " ORDER BY oper_num ASC";
        let result = (await pool.request().query(sql_query)).recordset;
        if(result.length === 0){
            resolve(0);
        }else{
            resolve(result[result.length-1]);
        }
    })();
};

我想按顺序执行所有这些函数,因为此任务无法异步完成

问题在于
()
下面的
承诺
构造函数。调用构造函数后删除
()
。将
.catch()
链接到
Promise
s以避免
未处理的PromisejectionWarning
错误。

问题在于
()
以下
Promise
构造函数。调用构造函数后删除
()
。将
.catch()
链接到
Promise
s以避免
未处理的PromisejectionWarning
错误。

为什么要将Promise创建和异步函数结合起来?它是冗余的。
parseInt(stringTime)
的预期结果是什么?而且,
StringToTime
甚至没有做任何异步的事情,所以为什么要用两个承诺来包装它呢?是的,我知道它是冗余的,我只是忘了删除它们。老实说,我不记得parseInt的目的是什么,我在office中有源代码。为什么要将承诺创建和异步函数结合起来?它是冗余的。
parseInt(stringTime)
的预期结果是什么?而且,
StringToTime
甚至没有做任何异步的事情,所以为什么要用两个承诺来包装它呢?是的,我知道它是冗余的,我只是忘了删除它们。老实说,我不记得parseInt的目的是什么,我的office中有源代码。谢谢,这解决了问题!我对允诺者不是很在行谢谢你,这就解决了问题!我对承诺不太在行