经历了Angular教程并意识到::用于类型声明,而=用于值赋值。看下面的代码
export class HeroesComponent implements OnInit {
hero: Hero = {
id: 1,
name: 'Windstorm'
}
我不明白为什么id和name使用:而不是=,因为类型已经声明,并且我们为hero的属性分配了一个值。
export class HeroesComponent implements OnInit {
hero: Hero = {
id = 1,
name = 'Windstorm'
}
上面是我希望可以使用但不正确的代码。
可以使用JavaScript中的不同方法来初始化对象。您可能更熟悉的一种方法是,首先创建对象的实例,然后通过构造函数,getter和setter分配属性,或者直接更改对象属性
// Creates a hero object with no properties
let hero = new Hero();
// Creates a hero object with defined properties
let hero = new Hero(1, 'Windstorm');
// Creates a hero object then sets the object property
let hero = new Hero();
hero.id = 1;
hero.name = 'Windstorm';
尽管这些在JavaScript中创建对象的方法是有效的,但您通常会看到开发人员使用对象文字,这是名称/值对的列表,以逗号分隔。您可能已经注意到,但是JSON采用与对象文字语言相同的语法,但有一个区别,即语言无关(对象文字语言是JavaScript独有的)。稍微扩展一下我的解释,您可以将任何数据类型分配给对象文字属性值:它可以是数组,字符串,整数,另一个对象文字等,只需按键盘上的“:”即可。 。
希望我能提供帮助,祝您好运!
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句