TypeScript属性简介
TypeScript属性被定义为一种替代性的注释,用于说明属性,使用类似于构造函数变量的名称和值,我们需要在构造函数参数的开头添加private或public,一个属性可以在导出时用于声明每个变量,函数类型的属性可以导出用于函数声明,构造函数类型的属性已经导出用于描述类,同样在TypeScript中我们可以将一个属性附加到一个对象上;同样TypeScript属性已经被调整为接口上的可选项。
TypeScript属性的概述
typescript属性可以有类似名称和值的快捷符号,它可以被视为构造函数参数。属性可以使用'this'关键字访问,所以我们可以先定义关键字,如'public'或'private',属性可以分布在每个变量声明、函数和为函数声明导出的构造器类型上。对象类型可以为内部模块声明而导出。
如何添加TypeScript属性?
首先,我们必须在typecript中设置一个属性到对象中,用于追加接口上的可选属性,并在'? '关键字的帮助下分配到对象中;之后,我们可以在没有类型错误的情况下一次追加属性。
代码
interface Human {
name:string;
age?:number;
}
const o1: Human = {
name: 'Tom',
};
o1.age = 40;
const o2: Record<string, any> = {};
o2.name = 'Tom';
o2.age = 40;
interface Pets extends Record<string, any> {
name: string;
age: number;
}
const o3: Pets = {name: 'Altmass', age: 5};
o3.type= 'Cat';
输出

TypeScript方法属性
在typescript中,方法是在类中声明的一段代码,当它被调用时可以执行。它的方法属性可以将一个巨大的任务分割成小部分,然后执行该程序的特定操作,这样代码就可以重复使用,可以从程序中改进模块。
它有三种类型的方法:
1.常规方法(动态和客观)
这种方法有自己的语法来定义它:
[private | protected | public] method_name(arguments): return_type
{
}
其中,return_type是方法的返回数据类型,当它不返回任何东西时,"void "关键字被用作返回类型,method_name是方法名称,typescript不允许使用两个名称相似的方法,或者它们有不同的参数。
代码
class Dog {
sayHi(breed: string): void {
console.log(`Hi ${breed}`);
}
}
function method_ex1_test(){
var tom: Dog = new Dog();
tom.sayHi("Siberian Husky");
}
method_ex1_test();
输出

2.静态方法
它可以利用'static'关键字与普通方法相协调,其语法如下:
[private | protected | public] static method_name(arguments): return_type {
}
这个方法可以通过类名和点符号来调用,其中类的动态成员不能出现在一个稳定的方法中,否则可以通过对象获得。
代码
class MyProfit {
static sum(c: number, d: number):number {
return c + d;
}
public static minus(c: number, d: number):number {
return c - d;
}
}
function method_static_ex1_test() {
var output = MyProfit.sum(100, 50);
console.log(`Sum Output: ${output}`);
output = MyProfit.minus(100, 50);
console.log(`Minus Output: ${output}`);
}
method_static_ex1_test();
输出

3.抽象方法
它是一个没有内容的非静态方法:
[protected | public] abstract method_name(arguments): return_type;
在这种类型中,只能声明一个方法。
代码
abstract class Human {
abstract sayHi(): void;
}
class EngHuman extends Human {
sayHi(): void {
console.log("Hello");
}
}
class RusHuman extends Human {
sayHi(): void {
console.log("Power");
}
}
function method_abstract_ex1_test() {
var enHuman = new EngHuman();
enHuman.sayHi();
var ruHuman = new RusHuman();
ruHuman.sayHi();
}
method_abstract_ex1_test();
输出

TypeScript属性类
让我们看看TypeScript属性类,其中TypeScript支持面向对象的编程特性,如类、接口;在面向对象的编程方面,类是生成一个对象的蓝图,它可以封装对象的数据,这是内置的支持,称为类。
创建一个类。
在typescript中,'class'关键字被用来描述类,它的语法如下所示:
Class class_name {
}
类的关键字在类的名称之后,其中有一些规则需要在命名类的时候检查。
让我们看看定义中可以包括哪些术语。
- 字段:它是任何可以在一个类中描述的变量,它可以构成从对象中获得的数据。
- 构造器:它可以负责为类的对象分配内存。
- 函数:它可以构成对象所持有的行动,它们也是在作为方法提到的时候。
当所有上述内容放在一起时,它就被称为类的数据成员。
让我们假设雇员类在手稿中:
代码
class Employee {
}
当我们编译这段代码时,将产生如下的JavaScript代码:
var Employee = (function () {
function Employee () {
}
return Employee;
}());
让我们看一个声明类的例子:
class motor
machine: string;
constructor (machine: string) {
this.machine = machine
}
disp():void {
console.log ("Machine is: "+this.machine)
}
}
输出
在上面的例子中,Motor类被声明了,它有一个字段'machine','var'关键字没有被用来声明字段,这个例子也可以为这个类声明一个构造函数。
总结
在这篇文章中,我们得出结论,typescript属性可以被附加到一个对象上,它可以被调整为一个可选的接口,在'?'标记的帮助下被分配给对象,所以这篇文章将有助于理解typescript属性的概念。