ts学习笔记一:基本类型

// 元组 ts中自己实现的 内容固定 类型固定

const tuple: [string, boolean, number] = [‘a’, true, 1]; // 初始化 必须按照要求填入数据

let r = tuple.pop()

tuple.push(‘str’, 1, 2, 3);// 在放入的时候 可以放入元组中定义的类型

// tuple[3] = 100; // 不能通过索引更改元组

// 数据交换 会用到元素 泛型

//枚举类型 ts最终编译成js 是没有类型的, 只是在开发时候使用的

// 普通枚举 异构枚举 常量枚举

const USER = Symbol(‘USER’)

const ADMIN = Symbol(‘ADMIN’)

const enum ROLE { // 大写是规范 加上const后 不会生成一个对象(更简洁)

USER,

ADMIN = 5,

MANAGER

}

// 枚举可以支持反举 ,但是限于索引,会根据上一个人的值 进行自动的推断

// console.log(ROLE.USER)

// console.log(ROLE[0],ROLE)

console.log(ROLE.USER);

// null undefined “是任何类型的子类型” 在严格模式下 undefined -> undefined null -> null

let u: undefined = undefined

let n: null = null

// never 从不 代码无法达到终点,无法执行到结尾 “是任何类型的子类型”

// 出错 、 死循环 、永远走不到的判断

function setVal(val: string) {

if (typeof val === ‘string’) {

} else {

val // never // 帮我们代码做完整校验 走不到else中 val就是never

}

}

function throwError(): never {

throw new Error()

}

// let xx = throwError();

function whileTrue(): never {

while (true) { }

}

// void表示函数返回值的 也可以描述变量 void的值只能赋予null和undefined

// 严格模式下 不能把null 赋予给void类型

function getVoid(): void { // 接口中定义类中原型方法的void 表示不关心返回值类型,在实现的时候可以在次确定类型,函数是确定死了

return

}

// void object

// 非原始数据类型

function create(obj: object) { // 后面泛型约束 会大量使用object类型

}

create({});

create(function () { })

create([]);

// Symbol BigInt js的类型 用的不多

let s1: symbol = Symbol(1);

let s2: symbol = Symbol(2);

console.log(s1 === s2); // 不相等 es6 -》 es5

最后

自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。

深知大多数初中级Android工程师,想要提升技能,往往是自己摸索成长,自己不成体系的自学效果低效漫长且无助。

因此收集整理了一份《2024年Web前端开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。

img

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Android开发知识点!不论你是刚入门Android开发的新手,还是希望在技术上不断提升的资深开发者,这些资料都将为你打开新的学习之门!

如果你觉得这些内容对你有帮助,需要这份全套学习资料的朋友可以戳我获取!!

由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!
*

如果你觉得这些内容对你有帮助,需要这份全套学习资料的朋友可以戳我获取!!

由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!

  • 11
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
好的,让我来回答你关于 TypeScript 中 Symbol 和模块的问题。 首先,Symbol 是 TypeScript 中的一种新的基本数据类型,它可以用来创建唯一的标识符。在 TypeScript 中,Symbol 主要有两种用法: 1. 作为对象属性的键值,用来表示一个对象属性的唯一标识符。 2. 作为一个类的静态属性或方法,用来表示该类的唯一标识符。 下面是一个使用 Symbol 作为对象属性键值的示例: ```typescript const key = Symbol('myKey'); const obj = { [key]: 'value' }; console.log(obj[key]); // 输出'value' ``` 在上面的代码中,我们使用 Symbol('myKey') 创建了一个新的 Symbol,然后将该 Symbol 作为对象 obj 的属性键值,并赋值为'value'。最后,我们通过 obj[key] 的方式来访问该属性,并输出了'value'。 另外,模块是 TypeScript 中的另一个重要概念,它用来组织和管理代码。在 TypeScript 中,模块可以使用 import 和 export 命令来进行导入和导出。下面是一个使用模块的示例: ```typescript // moduleA.ts export const num = 123; // moduleB.ts import { num } from './moduleA'; console.log(num); // 输出123 ``` 在上面的代码中,我们定义了一个名为 num 的常量,并将其导出。然后,在另一个模块中,我们使用 import 命令将 num 导入,并通过 console.log 输出了它的值。 这就是关于 TypeScript 中 Symbol 和模块的简单介绍,希望能对你有所帮助。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值