1、接口
让我们开发这个示例应用。这里我们使用接口来描述一个拥有firstName和lastName字段的对象。 在TypeScript里,只在两个类型内部的结构兼容那么这两个类型就是兼容的。 这就允许我们在实现接口时候只要保证包含了接口要求的结构就可以,而不必明确地使用 implements语句。
interface Person {
firstName: string;
lastName: string;
}
function greeter(person: Person) {
return "Hello, " + person.firstName + " " + person.lastName;
}
let user = { firstName: "Jane", lastName: "User" };
document.body.innerHTML = greeter(user);
2、for... in...
for...in 语句用于一组值的集合或列表进行迭代输出。
var j:any;
var n:any = "a b c"
for(j in n) {
console.log(n[j])
}
3、for…of 、forEach、every 和 some 循环
此外,TypeScript 还支持 for…of 、forEach、every 和 some 循环。
for...of 语句创建一个循环来迭代可迭代的对象。在 ES6 中引入的 for...of 循环,以替代 for...in 和 forEach() ,并支持新的迭代协议。for...of 允许你遍历 Arrays(数组), Strings(字符串), Maps(映射), Sets(集合)等可迭代的数据结构等。
//TypeScript for...of 循环
let someArray = [1, "string", false];
for (let entry of someArray) {
console.log(entry); // 1, "string", false
}
//
4、TypeScript every 循环
let list = [4, 5, 6];
list.every((val, idx, array) => {
console.log(val); // 1, "string", false
// val: 当前值
// idx:当前index
// array: Array
return false; // Continues
// Return false will quit the iteration
});
5、while 循环
var num:number = 5;
var factorial:number = 1;
console.log(num, "Num")
while(num >=1) {
factorial = factorial * num;
num--;
console.log(num)
}
console.log(num, "globNum")
console.log("5 的阶乘为:"+factorial);