语言
- Union 联合类型,是由多个类型组合成的引用类型。联合类型包含了变量可能的所有类型。
class Cat { sleep () {}; meow () {} }
class Dog { sleep () {}; bark () {} }
class Frog { sleep () {}; leap () {} }
type Animal = Cat | Dog | Frog;
function foo(animal: Animal) {
if (animal instanceof Frog) {
animal.leap(); // animal在这里是Frog类型
}
animal.sleep(); // Animal具有sleep方法
}
- Aliases匿名类型(数组、函数、对象字面量或联合类型)提供名称,或为已有类型提供替代名称。
type Matrix = number[][];
type Handler = (s: string, no: number) => string;
type Predicate <T> = (x: T) => boolean;
type NullableObject = Object | null;
- 比较运算符
运算符 说明
=== 如果两个操作数严格相等(对于不同类型的操作数认为是不相等的),则返回true。
!== 如果两个操作数严格不相等(对于不同类型的操作数认为是不相等的),则返回true。
== 如果两个操作数相等,则返回true。
!= 如果两个操作数不相等,则返回true。
> 如果左操作数大于右操作数,则返回true。
>= 如果左操作数大于或等于右操作数,则返回true。
< 如果左操作数小于右操作数,则返回true。
<= 如果左操作数小于或等于右操作数,则返回true。
- 位运算符
运算符 说明
a & b 按位与:如果两个操作数的对应位都为1,则将这个位设置为1,否则设置为0。
a | b 按位或:如果两个操作数的相应位中至少有一个为1,则将这个位设置为1,否则设置为0。
a ^ b 按位异或:如果两个操作数的对应位不同,则将这个位设置为1,否则设置为0。
~ a 按位非:反转操作数的位。
a << b 左移:将a的二进制表示向左移b位。
a >> b 算术右移:将a的二进制表示向右移b位,带符号扩展。
a >>> b 逻辑右移:将a的二进制表示向右移b位,左边补0。
- For-of语句
使用for-of语句可遍历数组或字符串。示例如下:
for (let ch of 'a string object') {
// print(ch)
}
工程目录结构
截屏2024-11-18 09.57.47.png
Module.json5
截屏2024-11-18 10.22.02.png
静态库和动态库
截屏2024-11-18 10.48.05.png