//默认参数
console.log('---默认参数---');
function demo1(name:string = "默认参数"): void {
console.log(name);
};
demo1();//return 默认参数
demo1("传入参数");//return 传入参数
// 可选参数
console.log('---可选参数---');
function demo2(name:string, age?: number): void {
if (age !== undefined)
return console.log(name + ',' + age);
console.log(name);
};
demo2("传入参数1");//renturn 传入参数1
demo2("传入参数2", 18);//renturn 传入参数2,18
// 剩余参数
console.log('---剩余参数---');
function demo3(name:string, ...items:Array<any>):void {//items 声明类型时,必须时数组
console.log('name:'+name);
items.forEach(item => {
console.log(item + ':' + name);
});
}
demo3("剩余0");//return name:剩余0
demo3("剩余1",1);//return name:剩余1 1:剩余1
demo3("剩余3",1,2,3);//return name:剩余3 1:剩余3 2:剩余3 3:剩余3
// 组合起来
console.log('---组合起来---');
function demo4(name?:string,...items:Array<any>):void{
console.log('name:'+name);
items.forEach(item=>{
console.log('items'+item);
});
}
demo4();//return name:undefined
demo4("demo4");//return name:demo4
demo4("items",1,2);//return name:items items1 items2