我被问到为什么我会引入一个变量来缩短昨天的属性路径?对我来说,这只是主观感觉,它更容易阅读。我现在想知道是否有任何客观原因选择以下两个选项之一(内存消耗,流行惯例......)?
选项1:
var errors = require('../errors'),
NotFoundError = errors.NotFoundError;
function example() {
...
new NotFoundError('Item was not found');
}
选项2:
var errors = require('../errors');
function example() {
...
new error.NotFoundError('Item was not found');
}
答案 0 :(得分:1)
在编程意义上执行此操作会丢失上下文(如果NotFoundError
依赖于this
为error
,则它将因选项1而失败,因为上下文将不同),以及字面意义(在这种情况下避免因为Error
在类名本身,但更模糊的名称可能导致混淆)