假设我在文件开头有这个定义:
const ObjectId = mongoose.Types.ObjectId;
你应该选择哪一个并为什么呢?
// 1
new ObjectId;
// 2
new ObjectId();
// 3
ObjectId();
官方文件建议使用
new ObjectId
。对我来说,new ObjectId()
更自然,但它们都会生成一个新的ObjectId,并且我已经在SO的问题和答案中看到了每种方法的例子。引用: http://mongoosejs.com/docs/api.html#types-objectid-js 更新:
让我澄清一下:我知道如何在JavaScript中使用new运算符,并想找出在生成ObjectID时使用
new
是否有任何重大区别。(函数行为不同、抛出错误等)
new
运算符有很好的解释(以及为什么如果你不使用它调用构造函数,它们很可能会表现得有点奇怪)。 - Joe Clay