随笔分类 - 06-ES-TS-Nodejs
摘要:一. TypeScript简介 1. JavaScript痛点 (1). 优秀的JavaScript没有缺点吗? A. 比如ES5以及之前的使用的var关键字关于作用域的问题; B. 比如最初JavaScript设计的数组类型并不是连续的内存空间; C. 比如直到今天JavaScript也没有加入类
阅读全文
摘要:一. Generator 1. 对比 常规循环 for (let i = 0; i < 5; i += 1) { console.log(i) } // this will return immediately 0 -> 1 -> 2 -> 3 -> 4 Generator写法 function*
阅读全文
摘要:一. String扩展 1. matchAll()方法 matchAll() 方法返回一个包含所有匹配正则表达式及分组捕获结果的迭代器 matchAll之前,还有exec、match、replace等 function selectDiv(regExp, str) { let matches = [
阅读全文
摘要:一. Object扩展 1. Object.fromEntries() 方法 Object.fromEntries() 把键值对列表转换为一个对象,这个方法是和 Object.entries() 相对的。 Object.fromEntries([ ['foo', 1], ['bar', 2] ])
阅读全文
摘要:一. for await of 异步迭代器(for-await-of):循环等待每个Promise对象变为resolved状态才进入下一步 function Gen(time) { return new Promise(function(resolve, reject) { setTimeout(f
阅读全文
摘要:一. ES7 1. includes (1). ES7之前,判断数组中是否包含某个元素,一般用 find方法 或 filter方法。 // ES7之前 var array1=['1','2','3','5'] console.log(array1.find(function(item) { retu
阅读全文
摘要:一. Reflect用法 1. 说明 Reflect对象与Proxy对象一样,也是 ES6 为了操作对象而提供的新 API。 Reflect对象的方法与Proxy对象的方法一一对应,只要是Proxy对象的方法,就能在Reflect对象上找到对应的方法。 Reflect 是一个内置的对象,它提供拦截
阅读全文
摘要:一. Map 1. 说明 ES6 提供了 Map 数据结构。它类似于对象,也是键值对的集合,但是“键”的范围不限于字符串,各种类型的值(包括对象)都可以当作键。也就是说,Object 结构提供了“字符串—值”的对应,Map 结构提供了“值—值”的对应,是一种更完善的 Hash 结构实现。如果你需要“
阅读全文
摘要:一. Function 1. 默认参数 (1). ES5的写法 { function foo(x, y) { y = y || 'world' console.log(x, y) } foo('hello', 'imooc') foo('hello', 0) //输出hello world foo(
阅读全文
摘要:一. nodejs简介/安装/使用 1. 简介 Node是一个基于Chrome V8引擎的JavaScript代码运行环境。 (1). 浏览器(软件)能够运行JavaScript代码,浏览器就是JavaScript代码的运行环境。 (2). Node(软件)能够运行JavaScript代码,Node
阅读全文
摘要:一. Array 1. 扩展运算符 (1). 扩展运算符可以将数组或者对象转为用逗号分隔的参数序列 let ary = [1, 2, 3]; console.log(...ary); // 1 2 3,相当于下面的代码 console.log(1,2,3); (2). 扩展运算符可以应用于合并数组
阅读全文
摘要:一. let、const 1. let (1). let声明的变量只在所处于的块级有效 if (true) { let a = 10; } console.log(a) // a is not defined 注意:使用let关键字声明的变量才具有块级作用域,使用var声明的变量不具备块级作用域特性
阅读全文
摘要:一. ES简介 1. ECMAScript (1). 简介 ES 的全称是 ECMAScript , 它是由 ECMA 国际标准化组织,制定的一项脚本语言的标准化规范。 每一次标准的诞生都意味着语言的完善,功能的加强。JavaScript语言本身也有一些令人不满意的地方。 变量提升特性增加了程序运行
阅读全文