任意值
任意值(any)用来表示可以赋值为任意类型的值
什么是任意值类型
如果是一个普通类型的值,在赋值过程中改变类型是不被允许的
let myFavoriteNumber: string = 'seven';
myFavoriteNumber = 7;
// index.ts(2,1): error TS2322: Type 'number' is not assignable to type 'string'.
但如果是any类型,那么则被允许赋值为任一类型
let myFavoriteNumber:any = 'seven'
myFavoriteNumber = 7
任一值的属性和方法
在任一值上访问任何属性都是允许的
let anything:any = 'hello'
console.log(anything.myName)
console.log(anything.myName.firstName)
也允许调用任一方法
let anyThing: any = 'Tom';
anyThing.setName('Jerry');
anyThing.setName('Jerry').sayHello();
anyThing.myName.setFirstName('Cat');
可以认为,声明一个变量为任意值之后,对它的任何操作,返回的内容的类型都是任意值。
对于未声明类型的变量,默认类型为任一值
let something
something = 'seven'
something = 1
console.log(something)