前景提要
https://www.typescriptlang.org/play/index.html#code/KYDwDg9gTgLgBASwHY2FAZgQwMbDgeTBgQiQGc4BvAKDjrjJigH4AuBp5Ac2oF9rq6AK5JsxUnHQAKCETLtC48gEoqtegnRwpAQlkwyAOkZRVMABZQIAdzhJgtgKJQrUKcvV1spRg3YnuOABeOH0jE084b3J4EGC4AG0AckwkgF1DAFtMMCkAE2CAPjgCgGpQuWMmD3oon3gAT3jk1Izs3IKg4rzjMAAbBBgZSpNlVQB6cbg0Vz5qIA export interface Options { str?: string } function f(opts: Options) { if (!opts.str) throw new Error() const s: string = opts.str const x = ['a'].map(d => d + opts.str) const y = ['a'].map(d => d.split(opts.str)) // error: opts.str: Type 'undefined' is not assignable to type 'string | RegExp'. }