
JavaScript
文章平均质量分 61
JavaScript
sharp_wu
这个作者很懒,什么都没留下…
展开
-
JS 字符串常用方法
字符串常用方法length 字符串长度这个相对简单,不多赘述const str = 'hello shadiao';console.log(str.length); // 13还有另一种方法,使用 … 扩展运算符const str = 'hello shadiao';console.log([...str].length); // 13split 分割字符串为数组split 方法将字符串分割为数组,参数为以XXX分割const str = 'hello shadiao';conso原创 2021-01-04 16:07:39 · 215 阅读 · 1 评论 -
ES11语法特性 私有属性 Promise.allSettled String.prototype.matchAll 可选链操作符 动态import BigInt类型 绝对全局对象globalThis
ES11私有属性私有属性只允许在类的内部调用,不允许在在类中,使用#变量名定义私有属性 class Person { name; #age; #weight; constructor(name, age, weight) { this.name = name; this.#age = age; this.#weight = weight; }原创 2020-12-02 19:11:37 · 519 阅读 · 0 评论 -
ES10语法特性 fromEntries trimStart trimEnd flat flatMap Symbol.prototype.description
ES10对象扩展方法 fromEntriesES8 中 entries 将对象转化为二维数组 console.log(Object.entries({ name: 'root', password: 'root' }));ES10 中 fromEntries将二维数组转化为对象1.二维数组 const result = Object.fromEntries([ ['name', 'root'], ['password', 'root']原创 2020-12-02 13:00:08 · 157 阅读 · 0 评论 -
ES9语法特性 对象展开(rest、扩展运算符) 正则扩展
ES9对象展开:rest参数、扩展运算符rest参数与扩展运算符 于ES6已经引入使用,但只针对数组在ES9中,为对象提供了和数组一样的rest、扩展运算符rest参数之前的参数一一对应,剩余的参数全部储存在rest参数数组中。 const connect = ({ host, port, ...userInfo }) => { console.log(host); console.log(port); console.log(us原创 2020-12-02 10:49:04 · 519 阅读 · 0 评论 -
ES8语法特性 async await values entries getOwnPropertyDescriptor
ES8async await为了解决异步编程,async await 结合使用是异步代码和同步代码一样生成器函数Promise函数async awaitasync函数async 函数的返回值为 Promise对象(即使返回的是字符串)只要返回的不是一个Promise对象,结果都为成功的Promise对象,返回的是Promise对象,结果为Promise对象返回的结果(成功或失败)。Promise对象的结果由 async 函数执行的返回值决定1.return的不是一个Promise对象(原创 2020-12-01 19:33:34 · 164 阅读 · 0 评论 -
ES7语法特性 includes **幂运算
ES7数组方法 includesincludes 检测数组中是否包含某个元素,返回布尔类型indexOf方法,存在返回索引,不存在返回-1 let arr = [1, 11, 22, 33, 44, 55, 66]; console.log(arr.indexOf(33)); // 3 console.log(arr.indexOf(333)); // -1includes let arr = [1, 11, 22, 33, 44, 55, 66];原创 2020-12-01 15:48:43 · 137 阅读 · 0 评论 -
ES6语法特性(五)模块化、引入npm包
ES6模块化模块化是指将一个大的程序文件,拆分为许多小的文件(模块),然后将小的文件组合起来。优点防止命名冲突代码复用高维护性模块化规范产品ES6之前本身没有模块化,社区衍生出模块化产品CommonJS ===> NodeJS、BrowserifyAMD ===> RequireJSCMD ===> SeaJS语法模块功能主要有两个命令构成 export 、importexport 命令用于规定模块对外的接口import 命令用于输入其他模块提供的功能原创 2020-12-01 15:33:20 · 1943 阅读 · 2 评论 -
ES6语法特性(四)class类 数值扩展方法对象扩展方法
ES6Class类es6引入了类Class 的概念,作为对象的模板。可以使用Class关键字定义类,通过类实例化对象。Class类可以看做是一个语法糖,绝大部分功能也可以通过es5做到。Class写法只是让对象原型的写法更加清晰、更像面向对象变成的语法而已。ES5 构造函数实例化对象 function Phone(brand, price) { this.brand = brand; this.price = price; } P原创 2020-11-30 19:41:45 · 677 阅读 · 0 评论 -
ES6语法特性(三)Set集合 Map
ES6Set(集合)ES6提供了新的数据结构Set,类似于数组,但成员的值是唯一的。集合实现了iterator接口,可以使用扩展运算符和for of 进行遍历。Set对象可以传入可迭代数据类型,传入数组可以实现去重 let s = new Set(); let arr = [1, 2, 1, 2, 3, 4, 2, 2, 34, 2, 4, 2, 4, 32, 2]; let s2 = new Set(arr); console.log(s, type原创 2020-11-28 15:57:19 · 240 阅读 · 0 评论 -
ES6语法特性(二)迭代器 生成器 Promise
ES6迭代器迭代器就是为实现对不同集合进行统一遍历操作的一种机制,只要给需要遍历的数据结构部署Iterator接口,通过调用该接口,或者使用消耗该接口的API实现遍历操作。ES6为迭代器引入了一个隐式的标准化接口。Javascript许多内建的数据结构,例如Array、Map、Set、String、TypedArray、函数的 arguments 对象、NodeList 对象都具备 Iterator 接口。Iterator接口主要为for of 使用,for of(遍历的是value) 不同于fo原创 2020-11-26 15:48:48 · 244 阅读 · 0 评论 -
ES6语法特性(一)let const 解构赋值 模板字符串 箭头函数 rest 扩展运算符 Symbol
ES6let特性变量不能重复声明块级作用域(if else while for…)全局、函数、eval(严格模式)不存在变量提示不影响作用域链{ let name = 'wufeng'; const fn = () => { console.log(name); // wufeng }; fn();}案例点击方块变色(var let)<!DOCTYPE html><html lang="en"> <head>原创 2020-11-24 14:40:54 · 428 阅读 · 0 评论