首页 > 编程知识 正文

es10新特性(ath es10)

时间:2023-05-04 16:04:39 阅读:92207 作者:4165

ES6、ES7、ES8、ES9、ES10

最近这么多人看了这个,大致更新了一下,不太齐全,请详细自己调查一下

ES6

ES6中地图和对象的区别

由于对象只接受字符串作为关键字名称,因此element将自动转换为字符串,[对象htmldivelement ] es6提供了映射数据结构。 类似于对象,是键-值对的集合,但“键”的范围不限于字符串,可以使用包括对象在内的各种类型的值作为键。 也就是说,Object结构提供了“字符串—值”的对应,Map结构提供了“值—值”的对应,是更高级的Hash结构的实现。

经常遇到的是箭头函数面试时听到的最多的箭头函数和this指向

359 ES6. Ruan Yifeng.com/https://www.cn博客.com/the博客/p/10575845.html

ES6兼容性问题

ES7

ES7除了ES6之外,还添加了三个项目:幂运算符(** )、Array.prototype.includes )方法、在函数范围内更改严格模式。 幂运算:

3**2 //9

includes:

[ 1,2,3 ] .索引(3)-1//真

同等:

[ 1,2,3 ] .包含(3)//真

两者都用===进行数据处理,但对NaN数值的处理行为不同。 返回true,因为includes对NaN的处理不会按照严格的模式进行。 索引关闭在严格的模式下处理,然后返回-1。

[ 1,2,nan ] .包含(nan )//真

[ 1,2,南] .索引(南)/-1

如果只想搜索数据是否在数组中,建议使用includes。 对于要搜索数据的索引位置,建议使用索引of

ES8

异步、await异步解决方案

在ES6中,为了解决回调的写法,引入了Promise的then函数,但是在业务逻辑较多的情况下,链式需要多个then函数,变得不明白意思。

新合同((解决,拒绝={this.login ) ) ) ) ) ) )。

. then ()=this.getInfo ) )

. then ()=(/dosomething ) )

. catch ()={控制台.日志} '错误' } )

在ES8中,让async和await更方便的其实是Generator的语法歌手。 async/await是一种编写异步代码的新方法,以前的方法有回调函数和Promise。 比Promise更简洁,更容易处理错误、条件语句和获取中间值。 阮义丰异步公司

Object.entries () :

方法以二维数组的形式返回对象的可枚举属性和值。 如果目标对象是数组,则数组的后缀将作为键值返回。)

Object.values () :

其工作原理与Object.entries () )方法类似,只是返回键-值对的值,结果是一维数组

object.values({one:1,two: 2} )//[ 1,2 ]

object.values(:(a ),1:’b ),2: ) c ) ) ) ) b ),c ),a ) )。

对象树([ 1,3 ] )/[ 1,3 ]

将字符串填充到padStart (,padEnd ),中

ES8提供了一种新的字符串填充方法,将字符串设置为固定长度。 有两个参数:字符串的目标长度和填充。

' react'.padstart(10,' m ' )//'mmmmmreact "。

' react'.padend(10,' m ' )//' reactmmmmm )。

' react'.padstart(3,' m ' )//'react ) )。

ES10

阵列的平面图(方法和平面图) )。

flat ) )方法以指定的深度递归遍历数组,并将所有元素和遍历的子数组中的元素合并为一个新数组,然后返回结果

flat ) )方法最基本的作用是降低数组的维。 flat ) )方法的特性,也可以删除数组的空项扁平化多维数组。

vararr3=[ 1,2,3,4,5,6 ];

ARR3.平面(2;

//[ 1,2,3,4,5,6 ]

使用Infinity作为深度,展开任意深度的嵌套数组

ARR3.平坦(infinity );

//[ 1,2,3,4,5,6 ]

//删除空项目

vararr4=[ 1,2,4,5 ];

ARR4.平坦(;

//[ 1,2,4,5 ]

flatMap ) )方法首先使用映射函数映射每个元素,并将结果压缩到新数组中。 这和map和深度值1的平面差不多,但是平面图通常比合并为一种方法要高效一些。 现在,我们来比较一下map法和flatMap法

vararr1=[ 1,2,3,4 ];

arr1.地图(x=x *2);

//[[2]、[4]、[6]、[8]中的一个。

arr1.平板地图(x=x *2);

2,4,6,8

只需“平坦”flatMap函数返回的数组

arr1.平板地图(x=x *2);

//[[2]、[4]、[6]、[8]中的一个。

String的trimStart (方法和trimEnd )方法Object.fromEntries ) ) symbol.prototype.descriptionstring.prototype.matchallfu 修改catch绑定的新基本数据类型BigInt globalThis import () Legacy RegEx专用实例方法和访问器

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。