1. "?." :可选链,在遇到null或undefined时可以立即停止某些表达式的执行
例:obj.name, 如果obj不存在,则会报错,可以改成obj?.name,相当于 obj && obj.name
2. "??" :空值合并运算符,当左侧操作数为 null 或 undefined 时,其返回右侧的操作数,否则返回左侧的操作数
例:console.log(null ?? "str"),输出str
3. "&" :交叉类型,将多个类型合并为一个类型,它包含了所需的所有类型的特性
4. "|" :分隔符,取值可以为多种类型中的一种