Tag: 代码可读性

为什么使用JavaScriptcallback,当清洁语法可用?

我正在学习使用Node。 到现在为止还挺好。 但是,对于JavasSript来说,这是一个相当新颖的东西,当清晰,更具可读性(至less对我来说)的语法可用时,我并没有真正使用callback函数。 下面是一个示例代码,使我的观点更清晰: 随着callback: exports.create = function(req, res){ new Todo({ content : req.body.content, updated_at : Date.now() }).save(function(err, todo, count){ res.redirect('/'); }); }; 没有callback: exports.create = function(req, res){ newtodo = new Todo({ content : req.body.content, updated_at : Date.now() }); newtodo.save(); res.redirect('/'); }; 这两个代码将保存新的待办事项和redirect。 我倾向于第二个,我发现更容易阅读,但也许有一个区别,我不明白。 有区别吗?

检查节点中的错误参数

在asynchronous操作中传递一个错误参数是节点中的约定: async.someMagicalDust(function(callback) { // some asynchronous task // […] callback(); }, function(err) { // final callback if(err) throw err; // […] }); 也许我太天真了,但是我从来没有对if(variable)符号的大爱好者 – 可能从Cinheritance,因为过去已经讨论过很多次了 。 另一方面,我有时遇到一个null参数,这个错误检查: if(typeof err !== 'undefined' && err !== null) 有点太冗长了。 另一个解决scheme是 if(err != null) 但我认为非严格的检查可能会非常棘手,即使我认为与空比较是正常的。 检查节点中错误参数的最佳方法是什么?