javascript - JavaScript 导出或函数定义中 < 和 > 的含义
问题描述
在 javascript 代码中,我看到这样的语句:
export default mongoose.model<UserInterface & mongoose.Document>('User', UserSchema)
这个例子取自回购: https ://github.com/santiq/nodejs-auth.git
如果有人能解释 <UserInterface & mongoose.Document> 的含义,那就太好了?您可以找到类似的语句,即Promise<any>
在同一个 repo 中出现几次。这不是我第一次看到这种说法,我找不到任何解释。由于我非常积极地学习 JavaScript,因此了解高级语法和任何“忍者”代码对我来说很重要。
提前谢谢乔
解决方案
那不是 JavaScript,那是 TypeScript。
- 和
<
分隔>
类型参数参数。 &
表示Intersection Type。
在这种情况下,它声明模块的默认导出项是一个model
对象,该对象涉及具有同时属于这两者的成员的任何对象。UserInterface
Document
推荐阅读
- node.js - 解决递归 socket.on("data") 调用
- java - 关于命令行程序输入的问题
- svelte-3 - 过滤 Svelte Promise 的结果
- python - 将 3D numpy 数组合并到 pandas Dataframe + 1D 向量中
- android - Firebase Kotlin Auth 在整个应用程序中保持登录
- php - 如何将现有模型作为多对多关系添加到 laravel 中的 dummy_mode
- javascript - 如何从 package.json 脚本运行 TypeScript 函数
- sql-server - FIELDQUOTE BULK INSERT 引号不会从加载的数据中删除
- swift - 如何在 UIScrollView 的子视图中使用 TouchEvent
- php - 表只显示名字,但只显示名字的首字母