
ES6
ES6语法新规范
思考猫
这个作者很懒,什么都没留下…
展开
-
Promise
Promise是一个ES5就出现的方法 ES6将它直接写入标准 Promise是一个构造函数 创建一个数据容器 Promise主动产生数据,不用手动添加 Promise对象的then函数是一个异步非阻塞函数 then函数的返回值是一个新的promise对象,如果then传入的回调函数返回值是一个promise对象 那么就是它,如果不是,就会把函数的结果包装为一个生成了数据的promise对象...原创 2022-07-13 22:52:02 · 73 阅读 · 0 评论 -
事件循环
任务分为同步阻塞任务 同步不阻塞任务 异步阻塞任务 异步不阻塞任务 异步任务的队列优先级:异步宏任务先执行 然后执行异步微任务 这里出现情况是因为两个任务不在一次事件循环中(任务开启后 内部又产生了新的任务) 事件循环过程: 先执行第一轮宏任务(脚本)中的代码:同步~微任务~下一轮宏任务中的代码 宏任务中:同步~微任务~下轮排队的宏任务 下轮排队的宏任务中:执行同步~执行微任务~遇到宏任务继续排队~执行下轮排队的宏任务原创 2022-07-13 22:49:02 · 65 阅读 · 0 评论 -
类
//js是什么语言 //js是一个基于面向对象设计的单线程的静态脚本语言 //基于面向对象:本质没有面向对象的方法和一些特点,但是按照自己的语法特征进行了相识的设计 //单线程:只能同时执行一个js代码 //静态:有错误不会立即返回 只有执行遇到才会报错 //脚本语言:具有嵌套特征 直接在代码中嵌套新代码 //类的语法 类名最好大写 好做区分 //声明类 class Person {} let p1 = new Per原创 2022-07-12 19:51:17 · 97 阅读 · 0 评论 -
箭头函数和模块化
定义式 声明式 不是声明式就是定义式 声明式是function开头 箭头函数 箭头函数里面的this总是指向最靠近的function 内部的this var fn = () => {}; 函数执行体只有返回值时 可以将大括号和return省略 var fn = () => this; 形参只有一个时 可以将小括号省略 var fn = a=> a * a; 等价于 var fn = function (a)原创 2022-07-12 19:42:58 · 201 阅读 · 0 评论 -
ES6字符串 数组 对象新方法
ES6之前判断字符串是否包含子串,用indexOf方法, ES6新增了子串的识别方法 includes():返回布尔值,判断是否找到参数字符串。 startsWith() :返回布尔值,判断参数字符串是否在原字符串的头部。 endsWith() :返回布尔值, 判断参数字符串是否在原字符串的尾部。 repeat()返回新字符串 将新字符串重复指定次数返回 padStart() padEnd()返回新字符串 表示用参数字符串从头到尾{或从尾到头}补全原字符串原创 2022-07-12 17:23:55 · 326 阅读 · 0 评论 -
symbol&&Map&&Set
es5中基本数据:null undefined number string boolean es6新增数据:symbol 生成一个独一无二的数据 es6出的新数据容器:数据是二维数据的形式,可以存任何数据 Map没有创建的语法糖 取数据 存数据 其他方法 扩展运算符购物车案例 只有大概思路...原创 2022-07-12 17:15:06 · 108 阅读 · 0 评论 -
解构赋值
1.对象模型 2.数组模型 举个例子 解构赋值允许指定默认值(当结构赋值找到的结果全等于undefined时 变量会取默认值 有值就会优先取找到的值 特别注意 null也不全等于undefined 也会取到值) 最后需要注意的是解构赋值的规则是,只要等号右边的值不是对象或数组,就先将其转为对象。由于undefined和null无法转为对象,所以对它们进行解构赋值,都会报错...原创 2022-07-08 19:45:00 · 641 阅读 · 0 评论 -
var&&const&&let
特点:1.可以声明不赋值 2.可以先访问在声明(隐式提升) 3.可以声明相同的变量名 特点: 1.可以声明不赋值 2.没有隐式提升 3.不可以在一个作用域声明相同的变量名 console.log(n)//报错 没有隐式提升 let n=200 console.log(n) es5代码块没有作用域 但是let可以将一个块封装成一个作用域 let a =原创 2022-07-08 16:30:49 · 144 阅读 · 0 评论