TS之任意值

简介: 任意值(Any)用来表示允许赋值为任意类型。

前言


本文介绍一下任意值。

任意值(Any)用来表示允许赋值为任意类型。


正文


一、什么是任意值类型?


如果是一个普通类型,在赋值过程中改变类型是不被允许的:

let myFavoriteNumber: string = 'seven';
myFavoriteNumber = 7;
// Type '7' 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 anything2: any = 'Frankie';
anything2.setName('Mandy');
anything2.setName('Mandy').sayHello();
anything2.myName.setFirstName('Ada');


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


三、未声明类型的变量


变量如果在声明的时候,未指定其类型,那么它会被识别为任意值类型:

let something;
something = 'seven';
something = 7;
something.setName('Frankie');
// 这里先说下后面要介绍的“类型推论”
// let something 会被推断成 any 类型;
// let something = 7 会被推断成 number 类型


等价于:

let something: any;
something = 'seven';
something = 7;
something.setName('Frankie');


目录
相关文章
|
2月前
ts中使用字符串做下标报错
ts中使用字符串做下标报错
32 5
|
6月前
|
存储
TS 自定义结构Long与number类型相互转换
TS 自定义结构Long与number类型相互转换
257 0
|
6月前
|
JavaScript
ts的交叉类型是什么
ts的交叉类型是什么
64 0
|
11月前
|
JavaScript
ts中枚举
ts中枚举
55 0
|
JavaScript 前端开发
ts -函数的类型
在 JavaScript 中,有两种常见的定义函数的方式——函数声明(Function Declaration)和函数表达式(Function Expression)
【TS】函数和函数类型
【TS】函数和函数类型
80 0
【TS】数组和元组
【TS】数组和元组
103 0
【TS】枚举
【TS】枚举
70 0
|
关系型数据库 MySQL
NULL 值处理
NULL 值处理