Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angular/29.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Angular 带访问修饰符的构造函数参数与不带访问修饰符的构造函数参数_Angular - Fatal编程技术网

Angular 带访问修饰符的构造函数参数与不带访问修饰符的构造函数参数

Angular 带访问修饰符的构造函数参数与不带访问修饰符的构造函数参数,angular,Angular,角度5 为什么在构造函数的签名中,只有使用访问修饰符限定的变量才能在整个类中被识别 例如 constructor(private n: number) { } fn(){ this.n = 6; //Allowed } 但是 因为,当您使用输入参数定义一个构造函数,该参数用私有(或公共)访问修饰符(来自Typescript)标记时,它会告诉您的类创建该属性并进行赋值。以下示例做了相同的事情: constructor(public a, private b) {} 如果不使用acc

角度5 为什么在构造函数的签名中,只有使用访问修饰符限定的变量才能在整个类中被识别

例如

constructor(private n: number) { 
} 

fn(){
  this.n = 6; //Allowed
}
但是


因为,当您使用输入参数定义一个构造函数,该参数用私有(或公共)访问修饰符(来自Typescript)标记时,它会告诉您的类创建该属性并进行赋值。以下示例做了相同的事情:

constructor(public a, private b) {}
如果不使用access修饰符(仅限于构造函数的本地修饰符),则需要自己定义该类属性,如第二个示例所示

您可以在该页面上阅读更多信息,以便更好地理解:

下面是同样的问题和有用的答案:


因为,当您使用带有私有(或公共)访问修饰符(来自Typescript)的输入参数定义构造函数时,它会告诉您的类创建该属性并进行赋值。以下示例做了相同的事情:

constructor(public a, private b) {}
如果不使用access修饰符(仅限于构造函数的本地修饰符),则需要自己定义该类属性,如第二个示例所示

您可以在该页面上阅读更多信息,以便更好地理解:

下面是同样的问题和有用的答案:


简单变量范围界定

当你写作时

constructor(x) {}
x
只能在承包商内部访问


使用访问修饰符,可以将其定义为类成员,从而将范围更改为类

简单变量范围

当你写作时

constructor(x) {}
x
只能在承包商内部访问

使用访问修饰符,可以将其定义为类成员,从而将范围更改为类