ES11 的新增知识点

54 阅读3分钟

image.png

image.png

image.png

这里的flat会对于数组进行递归的调用,如果在参数中没有传入数值的,默

认是进行一次深度的调用

对于这里进行一次降维的操作

image.png

这个就是单独的元素了

image.png

对于函数进行一个映射的操作

会先进行map 映射的操作,然后会进行flat深度降维的操作

这里会对这样的一个东西做了一个映射

使用trim() 的话是去除首部和尾部全部的空格

使用 trimStart() 来去除首部的空格

使用 trimEnd() 来去除尾部的空格

image.png

image.png

flatMap 来使用的话会进行一个深度的降维

对于空格进行切割

对于这里的东西就可以用来 flatMap((item)=>{ return item.split(" ") })

image.png

我们可以使用 entries 将对象转换为数组

我们也可以使用 entries.fromEntries 将数组转换成对象

对于数据进行一个遍历的

image.png

使用遍历的话是一个数组

image.png

trimStart trimEnd

精准的去除首尾的字符了

image.png

后面会讲解 try catch 的使用,后面会讲

这里的知识点都是比较简单的

image.png

最大表示的数字

// 获取最大的数字
const lessNumber = Number.MAX_SAFE_INTEGER

我们想要保存比这个更加大的数据

es11 之后加上一种数据类型,int

BigInt 表示更大的数字

这种可以进行隐式的转换

将大的数字进行隐式转化的话

image.png

需要进行一个加载

可以在后面跟上一个n来表示数字BigInt的增加

这里可以表示大的数据类型的值

这个也是可以使用Number进行转换的

这里我们可以保存一个视频

es11 新增的一个大的整数

image.png

ES11 Nullish Coalescing Operator

空值合并运算

image.png

短路与 和 短路或

这里的 || 是有缺陷的

如果我们的值是 "" 空字符串 或者是 数字0的时候,会进行隐式的转换成 false,就会执行后面的数据

这里依然会拿到后面的值

就是为了替换 ??

只有为一个undefined 或者是 一个null 的话才会执行后面的指令

这个其实是 es, ts 的超集,es中有的,ts里面也是有的

ts 是对于js进行了一个补充

在webpack 中可以进行一个转换的,在ts中还有三个知识

babel 也可以对于ts行一个转换

可选链

image.png

从undefined 里面获取属性是不行的

在前端这里的代码是不行的

在正常的情况下是不能运行的

如果这里的值可能为undefined,null 的情况下

可以使用 ?. 来进行,如果这里是undefined的情况下就不会执行了

这里依然是一个undefined

通过这样的一种属性的时候,进行判断

当我们这里出现undefined的时候的话,我们想让它更加的安全,更加的整洁的时候,我们可以使用

// 在浏览器下是window

// 可以获取元素中的window属性

// 但是在node 的环境下,window就不能使用了 // 我们可以把整个文件当成数据进行处理 // node 下面在全局下也是有一个对象的 console.log(global);

这里的数据有可能是跑在node 环境里面的

有可能是跑在浏览器的环境下的,不管是在浏览器下面运行的,还是在node 环境下运行的,都希望拿到里面的数据

这里会做很多的判断

我们可以使用 globalThis 来获取全局的对象

GlobalThis获取全局的对象

这里会自动检查是在那种环境里面获取全局的对象的

es11 里面

for in 的标准化

es 在这里遍历一个对象的时候,遍历的就是key

es 其他知识点

ES11 里面的内容动态的导入 ES Module模块化中进行讲解

image.png

在ES Module 模块化的时候进行讲解

这里也是扩展ECMA的支持的,这里node版本是14.17

支持或者不支持这样的一个版本