let name: string = "zhyangsan"
let age: number = 18
let handsome: boolean = true
let s1: string = "abc"
let s2: string = new String()
let s3: String = "abc"
let s4: String = new String("abc")
let arr1: number[] = [1, 2, 3, 4, 5]
let arr2: string[] = ['1', '2', '3', '4', '5']
let arr3: (number | string)[] = [1, '2', 3]
let arr4: Array<number | string> = [1, '2', 3, '4']
let tuple1: [string, number, boolean] = ["zhangsan", 18, true]
tuple1.push('abc')
console.log(tuple1[3])
enum USER_ROLE {
USER,
ADMIN,
MANAGER,
OTHER = "ABC"
}
var USER_ROLE;
(function (USER_ROLE) {
USER_ROLE[USER_ROLE["USER"] = 0] = "USER";
USER_ROLE[USER_ROLE["ADMIN"] = 1] = "ADMIN";
USER_ROLE[USER_ROLE["MANAGER"] = 2] = "MANAGER";
USER_ROLE["OTHER"] = "ABC";
})(USER_ROLE || (USER_ROLE = {}));
const enum MANAGER_ROLE {
MANAGER1,
MANAGER2,
MANAGER3
}
console.log(MANAGER_ROLE.MANAGER1)
console.log(0 );
let nullStr: string = null
let udfStr: string = undefined
function fn(): void {
return undefined
}
function fn1(): never {
while(true){}
}
let bar:string = fn1()
function validate(val:never){}
function getLastResult(stringOrNumberOrBoolean: string | number | boolean) {
if(typeof stringOrNumberOrBoolean === 'string'){
return stringOrNumberOrBoolean;
}
if(typeof stringOrNumberOrBoolean === 'number'){
return stringOrNumberOrBoolean
}
validate(stringOrNumberOrBoolean)
}
let union: string | number | boolean | never;
let a1:any = 1;
a1 = '1';
function create(val:object){}
create({})
create([])
create(function(){})
const 定义的类型是字面量类型,const 声明变量一定要赋值。
let a = 1
const a
const a = 1