let person = {}

此处的{}(花括号、大括号)来表示对象。而对象中没有属性和方法时,称为
空对象。
对象的属性和方法,采用键值对的形式,键、值之间使用冒号(:)来配对。
键(key)->名称,值(value)->具体数据
多个键值对之间,通过逗号(,)进行分割(类比数组)
属性和方法的区别:值是不是函数,如果是,就称为方法,否则,就是普通属性
注意:函数用作方法的时候,可以省略function后面的函数名称,也叫作匿名函数。

4.3接口

4.3.1对象的类型注解

TS中的对象是结构化的,结构简单的来说就是对象有什么属性和方法

   let person:{//对象的结构化类型
       name:String;
       age:number;
   person = {
       name:'刘老师',
       age:18

对象的结构化类型(类型注解):建立一种契约,约束对象的结构
注意点:类型注解中键值对的值为类型

4.3.2对象方法的类型注解

let person:{
    sayHi:()=>void
    sing:(name:string) => void
    sum:(num1:number,num2:number)=>number

箭头(=>)左边小括号中的内容:表示方法的参数类型。
箭头(=>)右边的内容:表示方法的返回值类型。
方法类型注解的关键点:1.参数 2.返回值

4.3.3接口的使用

直接在对象名称后面写类型注解的坏处:1.代码结构不够简洁 2.无法复用类型注解
接口:为对象类型注解命名,并为你的代码建立约束来约束对象的结构

interface IUser{
    name:string
    age:number
let p1:IUser = {
    name:'jack',
    age:18

4.3.4取值和存值

取值:拿到对象的属性和方法并使用
获取对象中的属性,称为访问属性
获取对象中的方法并调用,称为调用方法
通过点语法(.)就可以访问对象中的属性
存值:即修改(设置)对象中属性的值
注意:设置的新值,也必须符合该属性的类型要求
注意:几乎不会修改对象中的方法

4.4内置对象

对象的两种来源:1.自己创建 2.其他人创建(编程语言自带或第三方)
内置对象:是TS/JS自带的一些基础对象,提供了TS开发时所需的基础或必要能力。
已经用过的内置对象:数组

4.4.1数组对象

数组是TS最常用、最重要的内置对象之一。
数组的常用的操作:添加、删除、遍历、过滤
length属性:获取数组长度
push方法:添加元素(在数组的最后面添加元素,并返回其长度)
forEach方法:遍历数组forEach方法的参数是一个函数,这个函数也称为回调函数。forEach里面的回调函数是作为forEach方法的实参传入的,不应该指定类型注解。
some方法:遍历数组,查找是否有一个满足条件的元素(如果有,就可以停止循环),some方法的返回值是布尔值,如果找到满足条件的元素,结果为true,否则为false

4.4.2 TS推论

在TS中,某些没有明确指出类型的地方,类型推论会帮助提供类型,换句话说:
由于类型推论的存在,这些地方的类型注解可以省略不写
发生类型推论的2种常见场景:1.声明变量并初始化 2.决定函数返回值时

4.5枚举

枚举是组织有关联数据的一种形式
使用场景:当变量的值,只能是几个固定值的一个,就应该使用枚举实现
注意:js中是没有枚举,这是TS为了弥补js自身的不足而新增的
创建枚举的语法

enum 枚举类型 {成员1,成员2,...}
enum Gender {Female,Male}
enum Player {X,O}

约定枚举名称、成员名称以大写字母开头
多个成员之间使用逗号(,)分隔
注意:枚举中的成员,根据功能自己制定!
注意:枚举中的成员不是键值对!
使用枚举
枚举是一种类型,因此可以将其作为变量的类型注解

enum Gender {Female,Male}
let userGender: Gender

访问枚举中的成员,例如:

userGender = Gender.Female
userGender = Gender.Male

注意:枚举中的成员是只读的,也就是说枚举中的成员是可以访问的,但是不能赋值。

Gender.Female = '男' //错误

枚举成员是有值的,默认是0开始自增的数值。
枚举成员的值为数字的枚举,称为数字枚举
给枚举中的成员初始化值

enum Gender {Female = 1 ,Male} //Female => 1 ,Male => 2
enum Gender {Female = 1 ,Male = 100} //Female => 1 ,Male => 100

字符串枚举:枚举成员的值是字符串

enum Gender {Female = '女' ,Male = '男'}

注意:字符串枚举没有自增长行为,因此,每个成员必须有初始值

4.1对象概述 TypeScript中的对象,是对生活中具体事物的抽象,使得我们可以通过代码来描述具体的事情。Ts中的对象也是由特征和行为组成,他们有各自的专业的名称,属性(特征)和方法(行为)理解TS中的对象:一组相关的属性和方法的集合,并且是无序的。4.2创建对象 对象的语法let person = {}此处的{}(花括号、大括号)来表示对象。而对象中没有属性和方法时,称为空对象。对象的属性和方法,采用键值对的形式,键、值之间使用冒号(:)来配对。键(key)-> { TTMap[key] } 处报错 let key: number 元素隐式具有 “any” 类型,因为类型为 “number” 的表达式不能用于索引类型 “{ 0: string; 1: string; 2: string; }”。 在类型 “{ 0: string; 1: string; 2: string; }” 上找不到具有类型为 “number” 的参数的索引签名。ts(7053) import React fr
TypeScript 2.x for Angular Developers 英文无水印原版pdf pdf所有页面使用FoxitReader、PDF-XChangeViewer、SumatraPDF和Firefox测试都可以打开 本资源转载自网络,如有侵权,请联系上传者或csdn删除 查看此书详细信息请在美国亚马逊官网搜索此书
在使用ts对象成员时,必须对其赋初,否则不能使用如batchMes.varietyId或对对象内不存在的。 const [batchMes, setbatchMes] = useState({ batchName: '', batchNum: '', batchMeasure: 0, breedF
TypeScript 的 d.ts 文件是一种类型声明文件,用于在 TypeScript 中声明 JavaScript 库的类型。 d.ts 文件中包含着类型的声明,但不包含实际的代码。这样 TypeScript 编译器就可以在编译代码时检查类型的正确性,但在最终的 JavaScript 代码中不会包含这些声明。 使用 d.ts 文件的一个常见场景是在使用 JavaScript 库时,为了让 TypeScript 编译器能够正确检查类型,需要为 JavaScript 库提供类型声明。这样就可以在使用 JavaScript 库时享受 TypeScript 的类型检查功能。 总之,d.ts 文件是 TypeScript 中类型声明的一种重要工具,可以帮助我们在使用 JavaScript 库时更好地管理类型。
您好,请问下,require("../common/js/tracking-min"); require("../common/js/face-min"); require("../common/js/mouth-min"); require("../common/js/stats.min.js"); 这些可以在哪里下载到
react基础知识—13.Hook API的useDemo与useCallback newTeethCanRepaired: useDemo ? Memo ? 输入vue ui没有反应的原因和解决办法 BigFish623: 完美解决感谢 输入vue ui没有反应的原因和解决办法 好好工作-7: 赞一个,感谢