TypeScript真值缩小

TypeScript真值缩小

function getUserOnlineMessage(numUserOnline: number): string {
    if (numUserOnline) {
        return `现在共有 ${numUserOnline} 人在线`;
    } else {
        return "现在没人在线."
    }
}

此处使用了强制类型转换。
除了以下几个,强制类型转换均为True:

  1. 0
  2. NaN
  3. "" (空字符串)
  4. On (bigint零的版本)
  5. null
  6. undefined

另外转换类型的方法:

Boolean("hello"); // type: boolean, value: true
!!"world"; // type: bllean, value: true

可以防范null和undefined问题。

function printAll(strs: string | string[] | null): void {
    if (strs && typeof strs === "object") {
        for (const s of strs) {
            // ...
        }
    } else if (typeof strs === "string") {
        // ...
    } else {
        // ...
    }
}
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容