首页 > 其他分享 >ES6对数据类型都做了那些优化

ES6对数据类型都做了那些优化

时间:2024-08-08 16:27:56浏览次数:14  
标签:ES6 函数 数据类型 运算符 箭头 数组 优化 赋值

ES6 对 String 字符串类型做优化:

ES6 新增了字符串模板,在拼接大段字符串时,用反斜杠(、)取代以往的字符串相加的形式,能保留所有空格和换行,使得字符串拼接看起来更加直观,更加优雅。

ES6 对 Array 数组类型做优化:

1 、数组解构赋值 ES6 可以直接以 let [a,b,c] = [1,2,3]形式进行变量赋值,在声明较多变量时,不用再写很多 let(var),且映射关系清晰,且支持赋默认值。

2 、新增的扩展运算符(...),可以轻松的实现数组和松散序列的相互转化,可以取代 arguments 对象和 apply 方法, 轻松获取未知参数个数情况下的参数集合 。 (尤其是在 ES5 中, arguments 并不是一个真正的数组, 而是一个类数组的对象, 但是扩展运算符的逆运 算 却可以返回一个真正的数组) 。 扩展运算符还可以轻松方便的实现数组的复制和解构赋值(let a = [2,3,4]; let b=[...a])

ES6 对 Number 数字类型做优化:

ES6在Number 原型上新增了 isFinite(), isNaN()方法,用来取代传统的全局 isFinite(), isNaN() 方法检测数值是否有限、是否是 NaN。

ES6 对 Function 函数类型做的优化:

1 、箭头函数:

 箭头函数里没有自己的this,这改变了以往 JS 函数中最让人难以理解的this运行机制。

优化点:

1.1) 箭头函数内的 this 指向的是函数定义时所在的对象,而不是函数执行时所在的对象。ES5函数里的 this 总是指向函数执行时所在的对象,这使得在很多情况下this 的 指 向变得很难理解,尤其是非严格模式情况下,this有时候会指向全局对象,这甚至也可以归结为语言层面的bug之一 。ES6 的箭头函数优化了这一点,它的内部没有自己的 this,这也就导致了this 总是指向上一层的this,如果上一层还是箭头函数,则继续向上指,直到指向到有自己this 的函数为止,并作为自己的this。

 1.2) 箭头函数不能用作构造函数,因为它没有自己的this,无法实例化。

1.3) 也是因为箭头函数没有自己的 this,所以箭头函数内也不存在 arguments 对象。 (可以用扩展运算符代替)

2 、函数默认赋值ES6之前,函数的形参是无法给默认值得,只能在函数内部通过变通方法实现。ES6 以更简洁更明确的方式进行函数默认赋值。

标签:ES6,函数,数据类型,运算符,箭头,数组,优化,赋值
From: https://blog.csdn.net/m0_50127778/article/details/141029772

相关文章

  • openvslam 优化误差问题 随机一致性 核函数 信息矩阵(高斯牛顿)
     优化问题  我们的目标就是找到一组a,b,λa,b,\lambdaa,b,λ的解,使得式(1)整体值最小,也就是各个点到曲线的距离在y方向的和最小。 鲁棒核函数假设现在散点中一个很离谱的错误点由于右上角那个离谱的点,导致优化时将整个函数被拉偏了(可以对比图3)。那么怎么解决......
  • 基于WOA优化的CNN-GRU的时间序列回归预测matlab仿真
    1.算法运行效果图预览(完整程序运行后无水印)   2.算法运行软件版本matlab2022a 3.部分核心程序(完整版代码包含详细中文注释和操作步骤视频) %调整参数c1=2-t*((1)/300);c2=-1+t*((-1)/300);%位置更新fori=1:Numr1......
  • 前端使用 Konva 实现可视化设计器(20)- 性能优化、UI 美化
    这一章主要分享一下使用Konva遇到的性能优化问题,并且介绍一下UI美化的思路。至少有2位小伙伴积极反馈,发现本示例有明显的性能问题,一是内存溢出问题,二是卡顿的问题,在这里感谢大家的提醒。请大家动动小手,给我一个免费的Star吧~大家如果发现了Bug,欢迎来提Issue哟~g......
  • 代码随想录算法训练营第63天 | SPFA算法优化+变式
    94.城市间货物运输Ihttps://kamacoder.com/problempage.php?pid=1152Bellman_ford队列优化算法(又名SPFA)https://www.programmercarl.com/kamacoder/0094.城市间货物运输I-SPFA.html95.城市间货物运输IIhttps://kamacoder.com/problempage.php?pid=1153bellman_ford之判......
  • hive06_SQL优化
    HiveSQL原理joinjoin分为MapJoin、ReduceJoin两种,其中MapJoin思想是将小表存内存,然后大表分片,与小表完成连接操作。MapJoinMap阶段分为两个操作:将小表数据读入内存,生成分片文件后存储到分布式存储系统中;每个Mapper从分布式存储系统中读取文件分片到内存,然后顺......
  • 深入解析 Nginx 反向代理:配置、优化与故障排除
    深入解析Nginx反向代理:配置、优化与故障排除Nginx是一个高性能的HTTP和反向代理服务器,它以其高并发和高可扩展性在业界享有盛誉。反向代理是Nginx的重要功能之一,通过反向代理可以实现负载均衡、安全代理、缓存等多种用途。本篇文章将深入解析Nginx反向代理的工作......
  • 掌握MySQL查询优化:理论与实践全解析
    1.MySQL查询优化器概述MySQL查询优化器的主要功能是优化和执行SELECT语句,确保在正确执行的前提下提升执行效率。它利用关系代数、启发式规则和代价估算模型等技术进行优化,主要针对SPJ(选择-投影-连接)类型和非SPJ类型的查询语句进行优化。1.1主要功能关系代数:将SQL语......
  • MySQL优化攻略:利用常量表提升数据库性能
    1.常量表概述常量表在MySQL中的意义与编程语言中的常量不同。在MySQL中,常量表指的是那些读取表时行数明确为零或一行的数据表。常量表可以分为以下两种类型:1.1System表定义:System表是只包含一行数据的表。特点:这种表通常用于优化查询,因为其数据是固定的,因此对查......
  • 【创新、复现】基于蜣螂优化算法的无线传感器网络覆盖优化研究(Matlab代码实现)
    ......
  • 分类预测 | Matlab实现PSO-XGBoost粒子群算法优化XGBoost的多特征分类预测
    分类预测|Matlab实现PSO-XGBoost粒子群算法优化XGBoost的多特征分类预测目录分类预测|Matlab实现PSO-XGBoost粒子群算法优化XGBoost的多特征分类预测效果一览基本介绍程序设计参考资料效果一览基本介绍Matlab实现PSO-XGBoost粒子群算法优化XGBoost的多......