首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

TypeScript基础常用知识点总结

学习环境搭建: 1.下载最新版Node.js安装好 2.打开cmd,使用npm安装typescript npm install -g typescript TypeScript 全局安装后,我们可以在任意位置使用...TypeScript数组类型 TypeScript 数组类型有多种定义方式,比较灵活。...2 数组函数使用 数组可以作为参数传递给函数: let sites:string[] = new Array("Google","CSDN","Taobao","haiexijun") function...filter() 检测数值元素,并返回符合条件所有元素的数组。 forEach() 数组每个元素都执行一次回调函数。 indexOf() 搜索数组的元素,并返回它所在的位置。...join() 把数组的所有元素放入一个字符串。 lastIndexOf() 返回一个指定的字符串值最后出现的位置一个字符串的指定位置后向前搜索。

4.8K30

ECMAScript 2023:为JavaScript带来新的数组复制方法

当我们通过操作让对象产生变异时,则会产生一种副作用,导致系统其他位置发生意外行为。 举例来说,当 reverse 一个数组时会发生如下情况。...=> true 可以看到,原始数组已经反转,但即使我们将反转数组的结果分配给一个新变量,两个变量也仍指向同一数组。...变异数组和 React 数组变异方法中一个最著名的问题,就是 React 组件中使用时的异常。我们无法变异数组,之后尝试将其设置为新状态,因为数组本身是同一个对象且不会触发新的渲染。...如果要使用 toSpliced 代替 splice,但又想获取被删除的元素,则可对原始数组应用 toSpliced 和 slice,如下所示: const languages = ["JavaScript...', 'TypeScript', CoffeeScript' ] 不只是数组 此次发布的新方法不仅适用于常规的数组对象

22110
您找到你想要的搜索结果了吗?
是的
没有找到

【总结】1861- ECMAScript 2023:为JavaScript带来新的数组复制方法

当我们通过操作让对象产生变异时,则会产生一种副作用,导致系统其他位置发生意外行为。 举例来说,当 reverse 一个数组时会发生如下情况。...=> true 可以看到,原始数组已经反转,但即使我们将反转数组的结果分配给一个新变量,两个变量也仍指向同一数组。...变异数组和 React 数组变异方法中一个最著名的问题,就是 React 组件中使用时的异常。我们无法变异数组,之后尝试将其设置为新状态,因为数组本身是同一个对象且不会触发新的渲染。...如果要使用 toSpliced 代替 splice,但又想获取被删除的元素,则可对原始数组应用 toSpliced 和 slice,如下所示: const languages = ["JavaScript...', 'TypeScript', CoffeeScript' ] 不只是数组 此次发布的新方法不仅适用于常规的数组对象

19120

【JS】1081- 28个常用的JavaScript 数组方法备用清单

03、entry() entry() 方法返回一个带有键/值对的数组迭代器对象。 04、every() every() 方法检查数组的所有元素是否都通过了测试(作为函数提供)。...11、indexOf() indexOf() 方法在数组搜索指定项,并返回其位置。 12、isArray() isArray() 方法确定对象是否是数组。...14、lastIndexOf() lastIndexOf() 方法在数组搜索指定项,并返回其位置。 15、map() map() 方法使用为每个数组元素调用函数的结果创建一个新数组。...20、reverse() reverse() 方法反转数组中元素的顺序。 21、some() some() 方法检查数组的任何元素是否通过测试(作为函数提供)。...它为数组存在的每个元素执行一次函数。 22、slice() slice() 方法选择给定 start 参数开始的元素,并以给定的 end 参数结束,但不包括。

68110

零搭建一个 webpack 脚手架工具(一)

特别是开发大型项目时,项目太大,文件过多导致难以维护,或者是优化网络请求时,webpack 都是不可获取的利器。...最基础的开始,使用的 webpack 版本是^4.39.2,搭建时会用到以下技术: 单页面到多页面 代码切片 热更新 热替换 CSS 分离 HTML 模板 babel 的使用 支持 img、sass...entry 入口配置(必须的) entry 大致有四种写法,分别是字符串的形式、数组形式、函数形式和对象形式。.../index.js"]" 函数形式 可以是单入口也可以是多入口 该函数应该返回一个字符路径、数组对象作为打包入口 对象形式 这种表示多个入口 例如:entry: {app: '....因为加载的不是样式,而是图片, webpack ,想要加载图片,还需要使用 file-loader,之后会介绍。

1.6K41

四、HarmonyOS应用开发-ArkTS开发语言介绍

1.2、基础类型 TypeScript支持一些基础的数据类型,如布尔型、数组、字符串等,下面举例几个较为常用的数据类型,我们来了解下他们的基本使用。...布尔值 TypeScript可以使用boolean来表示这个变量是布尔值,可以赋值为true或者false。...第一种,可以元素类型后面接上 [],表示由此类型元素组成的一个数组。 let list: number[] = [1, 2, 3]; 第二种方式是使用数组泛型,Array。....getEmployeeInfo(); TypeScript,有public、private、protected修饰符,其功能和具体使用场景大家可以参考TypeScript 的相关学习资料,进行拓展学习...模块可以相互加载,并可以使用特殊的指令 export 和 import 来交换功能,另一个模块调用一个模块的函数。 两个模块之间的关系是通过文件级别上使用 import 和 export 建立的。

25000

【JS】547- 200行JS代码,带你实现代码编译器(人人都能学会)

(图片来自:https://segmentfault.com/a/1190000008739157) Angular 的 AOT 编译模式开发流程如下: 使用 TypeScript 开发 Angular...(图片来自:https://segmentfault.com/a/1190000008739157[1]) Angular 的 JIT 编译模式开发流程如下: 使用 TypeScript 开发 Angular...遍历过程,匹配每种字符并处理成「词法单元」压入「词法单元数组」,如当匹配到左括号( ( )时,将往「词法单元数组(tokens)「压入一个」词法单元对象」({type: 'paren', value...,定义了转换器 transformer 函数使用词法分析器返回的 LISP 的 AST 对象作为参数,将 AST 对象转换成一个新的 AST 对象。...「确定入口」 配置的 entry 入口,开始解析文件构建 AST 语法树,找出依赖,递归下去。

2.6K40

去哪面试都会问的HashMap

获取key为dnf的键值对时,1=hash(dnf),得到这个键值对在数组下标为1的位置,dnf和lol不相等,和下一个元素比较,相等返回。set和get的过程就是这么简单。...先定位到槽的位置(即数组位置),再遍历链表找到相同的元素。...,如果你仔细理解它的复制过程,会发现有如下2个特别有意思的地方 原来oldTable[i]位置的元素,会被放到newTable[i]或者newTable[i+oldTable.length]的位置 链表转移的时候会反转...查找的效率为O(logn),链表查找的效率为O(n) 常见面试题 HashMap,HashTable,ConcurrentHashMap之间的区别 对象 key和value是否允许为空 是否线程安全...概率学的角度选了一个合适的临界值为8 优化了hash算法 计算元素数组位置的算法发生了变化,新算法通过新增位判断oldTable[i]应该放在newTable[i]还是newTable[i+oldTable.length

38510

【图文详解】200行JS代码,带你实现代码编译器(人人都能学会)

Angular 的 AOT 编译模式开发流程如下: 使用 TypeScript 开发 Angular 应用 运行 ngc 编译应用程序 使用 Angular Compiler 编译模板,一般输出 TypeScript...Angular 的 JIT 编译模式开发流程如下: 使用 TypeScript 开发 Angular 应用 运行 tsc 编译 TypeScript 代码 使用 Webpack 或 Gulp 等其他工具构建项目...遍历过程,匹配每种字符并处理成词法单元压入词法单元数组,如当匹配到左括号( ( )时,将往词法单元数组(tokens)压入一个词法单元对象({type: 'paren', value:'('})。...,定义了转换器 transformer 函数使用词法分析器返回的 LISP 的 AST 对象作为参数,将 AST 对象转换成一个新的 AST 对象。...确定入口 配置的 entry 入口,开始解析文件构建 AST 语法树,找出依赖,递归下去。

3.1K00

TypeScript语言特性(上)

var height: number = 6; string TypeScript ,string类型用来表示文本。代码中使用字符串是将它们放在引号或者双引号中间。...enum类型的成员默认0开始,但你也可以手动设置成员的值来更改这种默认行为。...使用let声明的变量保存在最近的比函数作用域小的块作用域中(如果不在任何块则在全局作用域中)。 const关键字会创建一个保存在创建位置作用域中的常量,可以是全局作用域也可以是块作用域。...在上面这个例子,我们声明了一个可以存储一个(字符串)或者一组路径(字符串数组)的变量path。例子,我们也对这个变量进行了赋值,将字符串和字符串的数组合法地赋值给了这个变量。...位操作 JavaScript 效率不如其他语言的原因是,它必须先将操作元浮点型(JavaScript 存储数字的数据类型)转换成32位整型进行运算,然后再转换回浮点型。

91820

TS核心知识点总结及项目实战案例分析

, 有两种表示方式,第一种可以元素类型后面接上[],表示由此类型元素组成的一个数组 let arr:number[] = [1,2,2] // 数组类型, 使用数组泛型 let arr:Array<...还有一种常见的需求是, 我们实现自己的类后,需要支持类方法的链式调用, 这个时候我们应该返回this, typescript我们就需要了解多态的 this类型....使用第三方类库 熟悉以上基础知识之后, 我们看一下如何使用支持typescript的第三方类库....声明文件 声明文件也是一个非常重要的知识点.对于使用未经声明的全局函数或者全局变量, typescript往往会报错, 所以我们可以在对应位置添加xxx.d.ts文件, 并在里面声明我们所需要的变量,...* @param {object} obj 待反转对象 * @param {object} target 反转的目标对象 */ const reverseJson = (obj:Params

1.6K10

HarmonyOS开发学习(1)–目录认识与基本开发

基本语法 Harmony使用的ArkTS语言,其作为TS的超集,兼容TypeScript的语法,因此基本语法也与此相同: 基本数据类型: TypeScript支持一些基础的数据类型,如布尔型、数组、字符串等...布尔值 TypeScript可以使用boolean来表示这个变量是布尔值,可以赋值为true或者false。...第一种,可以元素类型后面接上 [],表示由此类型元素组成的一个数组。 let list: number[] = [1, 2, 3]; 第二种方式是使用数组泛型,Array。...使用的条件语句与一般语句相同 函数TypeScript函数有两种 // 有名函数 function add(x, y) { return x + y; } // 匿名函数 let myAdd...= function (x, y) { return x + y; }; TypeScript里我们可以参数名旁使用 ?

10610

构建工具tsup入门第一部分

介绍 tsup: tsup 是一个基于 ESBuild 实现在零配置的情况下快速捆绑 Typescript 模块的项目,支持 Node.js 应用的任何内容,如:.js、.json、.mjs,及 Typescript...使用配置文件: 虽说 tsup 宣传零配置下工作,但是实际的项目开发还是需要使用配置文件进行更细粒度的定制,tsup 支持 package.json 增加 tsup 相关属性进行配置,也提供独立配置文件的方式进行配置...,通过函数的方式返回一个配置对象,其它地方均不变: import { defineConfig } from 'tsup' export default defineConfig((options)...多入口配置: 了解了 tsup 的配置文件后,补充一下各个构建工具均支持的多入口编译配置的方式,各个构建工具大致相同: 使用终端命令执行时通过位置列出每一个入口文件: npx tsup index1....使用配置文件标记所有入口,支持对象数组两种模式: // 数组模式 export default defineConfig({ entry: ['index1.ts', 'index2.ts', .

1.5K10

这次我们翻转字符串里的单词

一些同学会使用split库函数,分隔单词,然后定义一个新的string字符串,最后再把单词倒序相加,那么这道题题目就是一道水题了,失去了它的意义。...那么使用双指针法来去移除空格,最后resize(重新设置)一下字符串的大小,就可以做到O(n)的时间复杂度。 如果对这个操作比较生疏了,可以再看一下这篇文章:数组:就移除个元素很难么?...此时我们已经实现了removeExtraSpaces函数来移除冗余空格。 还做实现反转字符串的功能,支持反转字符串子区间,这个实现我们分别在344.反转字符串和541.反转字符串II里已经讲过了。...int start = 0; // 反转的单词字符串里起始位置 int end = 0; // 反转的单词字符串里终止位置 bool entry =...entry) { start = i; // 确定单词起始位置 entry = true; // 进入单词区间 }

76130

终于搞懂TS的泛型啦!!

>("Hello, TypeScript"); // 传入 string 类型 第一次调用时,类型参数 number 被传递给 identity 函数,所以返回值的类型也是 number。...举个例子,考虑一个简单的数组反转函数reverse: function reverse(array: T[]): T[] { return array.reverse(); } 在这个例子,...我们定义了一个泛型函数reverse,接受一个数组参数,并返回反转后的数组。...确保属性存在 举个例子,假设我们想编写一个函数getLength,用于获取对象的长度。但是并不是所有的对象都有length属性,所以我们需要对泛型类型进行约束,确保它具有该属性。...# 5.2 检查对象的 key 1、keyof typescript 检测类型的方法,以联合类型的方式方返回类型的所有 key 2、搭配泛型约、 refshttps

16320

字符串:花式反转还不够!

一些同学会使用split库函数,分隔单词,然后定义一个新的string字符串,最后再把单词倒序相加,那么这道题题目就是一道水题了,失去了它的意义。...那么使用双指针法来去移除空格,最后resize(重新设置)一下字符串的大小,就可以做到O(n)的时间复杂度。 如果对这个操作比较生疏了,可以再看一下这篇文章:数组:就移除个元素很难么?...还做实现反转字符串的功能,支持反转字符串子区间,这个实现我们分别在字符串:这道题目,使用函数一行代码搞定和字符串:简单的反转还不够!里已经讲过了。...int start = 0; // 反转的单词字符串里起始位置 int end = 0; // 反转的单词字符串里终止位置 bool entry =...= ' ' && s[i - 1] == ' ')) { start = i; // 确定单词起始位置 entry = true; //

59920

PHP常用函数大全

strrpos() 函数查找字符串另一个字符串中最后一次出现的位置。 strripos() 函数查找字符串另一个字符串中最后一次出现的位置。 strrev() 函数反转字符串。...strrchr() 函数查找字符串另一个字符串中最后一次出现的位置,并返回位置到字符串结尾的所有字符。 strpos() 函数返回字符串另一个字符串第一次出现的位置。...stristr() 函数查找字符串另一个字符串第一次出现的位置。 stripos() 函数返回字符串另一个字符串第一次出现的位置。...getDocNamespaces() 函数 SimplexmlElement 对象返回 xml 文档声明的命名空间。 children() 函数获取指定节点的子节点。...返回的数组使用数字索引, start 位置开始并递增。如果 number 为 0 或小于 0,就会出错。

2.4K20

扫码

添加站长 进交流群

领取专属 10元无门槛券

手把手带您无忧上云

扫码加入开发者社群

相关资讯

热门标签

活动推荐

    运营活动

    活动名称
    广告关闭
    领券