我正在学习Stephen Colbert的Advance NodeJS课程,在那里我遇到了一个看起来像这样的代码
const cacheValue = await client.get(key)
if (cacheValue) {
const doc = JSON.parse(cacheValue)
console.log("this is doc:", doc)
if (Array.isArray(doc)) {
const doc1 = doc.map(d => new this.model(d))
console.log("this is doc1:", doc1)
return doc1
}
return this.model(doc)
}
在这里,斯蒂芬(Stephen)谈论的是redis(我认为这在这里可能不太重要),他提到我们可以得到一个博客和一组博客。
因此,当我们收到一组博客时,我们将检查它是否为数组,然后将其映射为const doc1 = doc.map(d => new this.model(d))
现在,我无法理解为什么return this.model(doc)
会不起作用?就像为什么我们需要做if (Array.isArray(doc)) {
我也看不到console.log("this is doc:", doc)
和console.log("this is doc1:", doc1)
之间的任何区别,因此这里的doc
和doc1
之间有什么区别?