typescript(八)ts中的Enum枚举

业务场景:根据不同数字做不同事

初级程序员代码:

function getResult1(num: number) {
    if (num == 1) {
        return '烫头'
    } else if (num == 2) {
        return 'rap'
    } else if (num == 3) {
        return '唱跳'
    }
}
const result = getResult1(1)
console.log('结果是' + result) // '烫头

中级程序员代码:

const dotype = {
    tangtou: 1,
    rap: 2,
    changtiao: 3
}
function getResult2(num: number) {
    if (num == dotype.tangtou) {
        return '烫头'
    } else if (num == dotype.rap) {
        return 'rap'
    } else if (num == dotype.changtiao) {
        return '唱跳'
    }
}
const result2 = getResult2(1)
console.log('结果是' + result) // '烫头

高级程序员代码:

enum Etype {
    tangtou,
    rap,
    changtiao
}
function getResult3(num: number) {
    if (num == Etype.tangtou) {
        return '烫头'
    } else if (num == Etype.rap) {
        return 'rap'
    } else if (num == Etype.changtiao) {
        return '唱跳'
    }
}

回头来看枚举enum

// 枚举enum会将
enum Example {
    x,
    y,
    z
}
// 转化成
const Example1 = {
    x: 0,
    y: 1,
    z: 2
}

如果不想从0开始枚举呢

enum Example3 {
    x = 1,
    y,
    z
}

枚举可以通过下标检索

console.log(Example3.x, Example3[1])

下一篇: typescript((九)ts中的泛型

你可能感兴趣的:(#,前端Javascript,前端,typescript,ts)