1、参数类型(在参数名称后面使用冒号来指定参数的类型)
var myName:string = "张三";
myName = 13; // 当重新给 myName 赋值的时候,如果值的类型与开始指定的类型不符, IDE 会进行类型检查,从而提示错误
var firstName = "李四";
firstName = 13; // 与上面相同,不同的是, firstName 虽然没有指定类型,但是 IDE 会进行类型推断(从第一给这个变量赋值的地方开始,自动推断变量类型),从而提示错误
variable:any(表示该变量可以是任何类型)
var str:any = "张三";
str = 13; // IDE 不会提示错误, any 类型表示可以是任何类型
functionName(): void {...}(冒号后面跟的是该方法的返回值,void 表示没有返回值)
function hello(): void {
return "hello"; // 当声明了该方法的返回值为(:void)时,如果有 return(返回值), IDE 会提示错误
}
function myName() :string {
return "张三"; // 声明了返回值为 string 类型,表示该方法必须有返回值,而且返回值的类型必须是 string 类型,否则 IDE 会提示错误
}
arguments:type
function hello(name:string, age:number) {
console.log(name);
console.log(age);
}
hello("张三", 18); // 当方法的参数也有声明类型的时候,在方法调用的时候,也必须按照指定类型传参,否则 IDE 会提示错误
自定义类型
class Person { // 在 typescript 里面,可以通过 class 或接口,来自己声明自己自定义的类型
name: string;
age: number;
}
var someone: Person = new Person(); // 定义 someone 的类型为 Person 类型
someone.name = "张三"; // 属性的类型也必须是 someone 内预先定义好的类型,否则 IDE 会提示错误
someone.age = 13;
2、默认参数(在参数声明后面用等号来指定参数的默认值)
function print (a: string, b: number, c: boolean = false) { // 重点:带默认值的参数一定要声明在最后面
console.log(a);
console.log(b);
console.log(c);
}
print("张三", 13, true); // 假设三个参数都没有默认值,方法调用时,必须传指定个数的参数,否则 IDE 会提示错误
print("张三", 13); // 当第三个参数有默认值的时候,可传,可不传。