回调作为node.js中的一个选项

时间:2016-08-18 08:21:35

标签: node.js

我正在使用node.js,如何将回调设置为特定函数的选项?

例如:

    function sum(a, b, callback) {
      return callback(a+b)
    }

    var result = sum(a,b) // this seems to cause error: callback is not a function

    sum(a, b, function(sum) {
      // this works fine
    })

有没有办法让上述两种方式(有和没有回调)都有效?

谢谢!

2 个答案:

答案 0 :(得分:2)

只需检查function sum(a, b, callback) { if(typeof callback === 'function'){ return callback(a+b) } else { return a+b; } } 参数是否为函数。

$this->database->createDatabase($this->input->post('dbName'));

 public function createDatabase($name){
    if ($this->dbforge->create_database($name))
    {
       return true;
    }
}

因此,您的sum函数可以写成:

{{1}}

Demo JSFiddle

答案 1 :(得分:-2)

您好,您可以使用以下代码

function sum(a, b, callback) {
    if(typeof callback === 'function'){
        return callback(a+b)
    }
    else {
      return a+b;
    }
}

也在上面的帖子中提到