这个奇怪的 JavaScript 代码是如何工作的?神秘结肠

2024-03-21

我正在关注 Angular 2 官方教程,然后我看到了这段代码:

const HEROES: Hero[] = ...

我不明白冒号怎么会出现在 HEROES 之后,我找不到任何关于 JavaScript 和 TypeScript 中冒号用法的文档。我认为冒号仅用于对象“键:值”和三元运算符。

export class Hero {
  id: number;
  name: string;
}

const HEROES: Hero[] = [
  { id: 11, name: 'Mr. Nice' },
  { id: 12, name: 'Narco' },
  { id: 13, name: 'Bombasto' },
  { id: 14, name: 'Celeritas' },
  { id: 15, name: 'Magneta' },
  { id: 16, name: 'RubberMan' },
  { id: 17, name: 'Dynama' },
  { id: 18, name: 'Dr IQ' },
  { id: 19, name: 'Magma' },
  { id: 20, name: 'Tornado' }
];

你能帮我理解这个冒号语法吗?

其他问题的答案没有解释打字稿,它是一种特殊的语法。


这是 TypeScript 代码,这就是您声明(注释)type https://www.typescriptlang.org/docs/handbook/basic-types.htmlTypeScript 中的变量。该声明意味着类型HEROES应该Hero[],一个数组Hero对象。

var HEROES: Hero[];

TypeScript 编译器将使用此信息来防止对该变量进行错误赋值——例如,您不能分配number to HEROES (不仅因为后者是代码中的常量,而且因为它会导致类型错误).


类型声明可以在强类型编程语言中找到;例如,C# 中的等效项是:

Hero[] HEROES;
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

这个奇怪的 JavaScript 代码是如何工作的?神秘结肠 的相关文章

随机推荐