为什么console.log(newMap<String,Number>([]))在JavaScript中记录true,true?

究竟是什么导致这个类似 TypeScript 的表达式登录true, trueJavaScript?

console.log(new Map<String, Number>([]))

回答

如果您以不同的方式对其进行格式化,您会发现这可能看起来像 TS,但它只是 JavaScript。巧合的是,尖括号和逗号与 console.log 的两个参数的语法完美匹配,其中每个参数都是一个比较,小于和大于。比较的是:

new Map < String // true
Number > [] // true

以一种更明显的方式写出来:

console.log(new Map < String, Number > ([]))

如果您打算将它写在一个 TS 文件中,它可能会被解释(如您所愿)作为类型泛型,那么您可能正在寻找不同的类型:stringand number,而不是您在示例中使用的StringandNumber构造函数。


以上是为什么console.log(newMap&lt;String,Number&gt;([]))在JavaScript中记录true,true?的全部内容。
THE END
分享
二维码
< <上一篇
下一篇>>