我正在使用Node和express,我遇到了一个问题。例如,当遇到某条路线时,我经常需要执行一个回调函数。
如果我必须在回调中调用say,10个函数,我应该将这些函数定义为“up op”(在回调之外)还是在回调中定义它们?
似乎在回调中定义它们,虽然更容易(因为所有变量都将被定义)效率较低,因为每次调用回调时都会定义它们,但我不确定这一点。
例如:
var express = require('express');
var Products = require('../products.js');
var router = express.Router();
// Should the function "getItem" be defined here
router.post('/', function (req, res) {
var info;
var databaseUser;
var totalCost = 0;
// Or defined here
function getItem (skunumber, callback) {
Products.findOne({sku: skunumber}, function (err, product) {
product = product.toObject();
totalCost += product.price;
callback = callback || function () {console.log(product.price);};
callback();
});
}
}
或者甚至有所作为?