我对 node.js 的异步性质感到困惑。我正在其中编写一个小项目,而我之前的(同步)编程经验妨碍了我。
我应该如何决定是否/在哪里编写异步代码?
例如,我有一个带有字段的模型,其中每个都有一些验证规则:
model = { title: text_validation,
subtitle: text_validation }
text_validation = { max_len: 10,
required: true,
url: true }
当我验证模型时,我会遍历所有字段,检查规则是否通过 - 这些是非常快速的功能。
Model.validate = function() {
validator = {};
fields = Object.keys(Model);
fields.forEach(function(field) {
validator[field_name] = field.validate();
});
}
Field.validate = function() {
validator = [];
rules.forEach(function(rule) {
if (rule is not valid)
validator.push(rule)
});
return validator;
}
我应该使用具有如此短而快速迭代的回调吗?
这里的界限在哪里?node.js 应该始终是异步的,或者如果它足够快,我可以允许同步循环或 w/e 吗?如果可能,请参考何时何地使用同步/异步的示例。