Typescript 学习笔记3 —— 任意值

学习链接:https://ts.xcatliu.com/basics/any

什么是任意值类型?

如果是一个普通类型,在赋值的时候改变类型是不被允许的,但是一个任意值类型的变量就OK

let myFavouriteNumber:string = 'seven';
myFavouriteNumber = 7; // 报错: 不能将类型“7”分配给类型“string”。

let myFavouriteNumber2: any = 'seven';
myFavouriteNumber2 = 7; // OK

在任意值上访问任何属性和方法都是被允许的

可以认为声明一个变量为任意值后,对他的任何操作,返回的内容的类型都是任意值。

let anyThing: any = 'hello';
console.log(anyThing.myName);
console.log(anyThing.myName.firstName);

anyThing.setName('Jerry');
anyThing.setName('Jerry').sayHello();
anyThing.myName.setFirstName('Cat');

当然上面的代码编译OK,但是运行时会报错。

未声明类型的变量

变量如果在声明的时候没有指定他的类型,那么他会被识别为任意值。

以下两种方式声明的变量等价。

let something;
let something2: any;

 

posted @ 2020-05-17 14:46  柚子x  阅读(256)  评论(0)    收藏  举报