广告
返回顶部
首页 > 资讯 > 精选 >如何使用ES6简化代码
  • 744
分享到

如何使用ES6简化代码

2023-06-27 18:06:57 744人浏览 八月长安
摘要

小编给大家分享一下如何使用es6简化代码,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!使用 ES6 简化代码ES6 已经发展很多年了,兼容性也已经很好了。恰当地使

小编给大家分享一下如何使用es6简化代码,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!

使用 ES6 简化代码

ES6 已经发展很多年了,兼容性也已经很好了。恰当地使用,可以让代码更加地简洁优雅。

(1)使用箭头函数取代小函数

有很多使用小函数的场景,如果写个 function,代码起码得写 3 行,但是用箭头函数一行就搞定了,例如实现数组从大到小排序

var nums = [4, 8, 1, 9, 0]; nums.sort(function(a, b){     return b - a; }); //输出[9, 8, 4, 1, 0]

如果用箭头函数,排序只要一行就搞定了:

var nums = [4, 8, 1, 9, 0];``nums.sort(a, b => b - a);

代码看起来简洁多了,还有 setTimeout 里面经常会遇到只要执行一行代码就好了,写个 function  总感觉有点麻烦,用字符串的方式又不太好,所以这种情况用箭头函数也很方便:

setTimeout(() => console.log("hi"), 3000)

箭头函数在 c++/Java 等其它语言里面叫做 Lambda 表达式,Ruby 比较早就有这种语法形式了,后来 C++/Java  也实现了这种语法。当然箭头函数或者 Lambda 表达式不仅适用于这种一行的,多行代码也可以,不过在一行的时候它的优点才比较明显。

(2)使用 ES6 的 class

虽然 ES6 的 class 和使用 function 的 prototype 本质上是一样的,都是用的原型。但是用 class  可以减少代码量,同时让代码看起来更加地高大上,使用 function 要写这么多:

function Person(name, age){     this.name = name;     this.age = age; }  Person.prototype.addAge = function(){     this.age++; };  Person.prototype.setName = function(name){     this.name = name; };

使用 class 代码看加地简洁易懂:

class Person{     constructor(name, age){         this.name = name;         this.age = age;     }     addAge(){         this.age++;     }     setName(name){         this.name = name;     } }

并且 class 还可以很方便地实现继承、静态的成员函数,就不需要自己再去通过一些技巧去实现了。

(3)字符串拼接

以前要用+号拼接:

var tpl =     '<div>' +     '    <span>1</span>' +     '</div>';

现在只要用两个反引号“`”就可以了:

var tpl = `   <div>         <span>1</span>     </div> `;

另外反引号还支持占位替换,原本你需要:

var page = 5,     type = encodeURIComponet("#js"); var url = "/list?page=" + page + "&type=" + type;

现在只需要:

var url = `/list?page=${page}&type=${type}`;

就不用使用+号把字符串拆散了。

(4)块级作用域变量

块级作用域变量也是 ES6 的一个特色,下面的代码是一个任务队列的模型抽象:

var tasks = []; for(var i = 0; i < 4; i++){     tasks.push(function(){         console.log("i is " + i);     }); } for(var j = 0; j < tasks.length; j++){     tasks[j](); }

但是上面代码的执行输出是 4,4,4,4,并且不是想要输出:0,1,2,3,所以每个 task 就不能取到它的 index 了,这是因为闭包都是用的同一个  i 变量,i 已经变成 4 了,所以执行闭包的时候就都是 4 了。那怎么办呢?可以这样解决:

var tasks = []; for(var i = 0; i < 4; i++){     !function(k){         tasks.push(function(){             console.log("i is " + k);         });     }(i); } for(var j = 0; j < tasks.length; j++){     tasks[j](); }

把 i 赋值给了 k,由于 k 它是一个 function 的一个参数,每次执行函数的时候,肯定会实例化新的 k,所以每次的 k  都是不同的变量,这样就输出就正常了。但是代码看起来有点别扭,如果用 ES6,只要把 var 改成 let 就可以了:

var tasks = []; for(let i = 0; i <= 4; i++){     tasks.push(function(){         console.log("i is " + i);     }); } for(var j = 0; j < tasks.length; j++){     tasks[j](); }

只改动了 3 个字符就达到了目的。因为 for 循环里面有个大括号,大括号就是一个独立的作用域,let  定义的变量在独立的作用域里面它的值也是独立的。当然即使没写大括号 for 循环执行也是独立的。除了以上几点,ES6 还有其它一些比较好用的功能,如 Object的 assign,Promise 等,也是可以帮助写出简洁高效的代码。

以上是“如何使用ES6简化代码”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注编程网精选频道!

--结束END--

本文标题: 如何使用ES6简化代码

本文链接: https://www.lsjlt.com/news/312688.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • 如何使用ES6简化代码
    小编给大家分享一下如何使用ES6简化代码,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!使用 ES6 简化代码ES6 已经发展很多年了,兼容性也已经很好了。恰当地使...
    99+
    2023-06-27
  • 如何利用现代化C#语法简化代码
    Intro 最近几个版本的 C# 在语法中有很多的变化,有很多语法能够帮助我们大大简化代码复杂度,使得代码更加简洁,分享几个我觉得比较实用的可以让代码更加简洁的语法 Default...
    99+
    2022-11-12
  • 如何利用Golang Facade模式简化代码
    使用Golang Facade模式可以简化代码的步骤如下:1. 首先,确定需要进行简化的代码块或者子系统。这些代码块可以是复杂的逻辑...
    99+
    2023-10-08
    Golang
  • ES6中如何让代码更简短,更整洁,更易读
    这篇文章给大家分享的是有关ES6中如何让代码更简短,更整洁,更易读的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。template literals 模板字符串模板字符串使字符串的...
    99+
    2022-10-19
  • 如何使用webpack4编译并压缩ES6代码
    这篇文章将为大家详细讲解有关如何使用webpack4编译并压缩ES6代码,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。前段时间第一次接触了layabox游戏引擎做了一个项...
    99+
    2022-10-19
  • C#中如何使用属性和索引器简化代码
    C#中如何使用属性和索引器简化代码在C#中,属性和索引器是两种强大的语言特性,能够帮助我们简化代码并提高代码的可读性和灵活性。本文将介绍如何使用属性和索引器来简化代码,并提供一些具体的代码示例。一、属性属性是一种用于访问和设置类对象的特殊成...
    99+
    2023-10-22
    属性 简化代码 索引器
  • Shell脚本中如何使用PHP数组来简化代码?
    在Shell脚本中,经常需要处理一些数据,例如解析文件或者处理命令行参数。处理数据的过程中,我们需要使用到数组来存储和操作数据。在Shell脚本中,使用数组可以帮助我们简化代码,提高代码的可读性和可维护性。 在Shell脚本中,数组的使用...
    99+
    2023-08-25
    数组 shell laravel
  • es6模块化如何使用
    本篇内容介绍了“es6模块化如何使用”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!天下苦 CommonJs 久矣Es Module 的独特之...
    99+
    2023-07-05
  • PHP开发技术教程:如何使用函数来简化代码?
    PHP是一种强大的编程语言,被广泛应用于Web开发和服务器端编程。在PHP开发中,函数是一种非常有用的工具,可以大大简化代码的编写和维护。在本文中,我们将介绍如何使用函数来简化PHP代码的编写。 一、什么是函数? 函数是一段可重用的代码,可...
    99+
    2023-08-09
    开发技术 教程 函数
  • 如何在PHP、Shell、Django中使用函数来简化您的代码?
    在编写代码时,我们经常会遇到相似的任务,而这些任务通常需要重复的代码来完成。这不仅浪费时间,还会增加代码维护的复杂度。为了简化这个过程,我们可以使用函数来将重复的代码封装起来,使代码更加易于维护和扩展。在本文中,我们将介绍如何在PHP、Sh...
    99+
    2023-09-18
    shell django 函数
  • WCF如何使用动态代理精简代码架构
    目录一、重构前的项目代码二、客户端通过动态代理重构三、WCF服务端通过动态代理,在拦截器中校验Ticket、处理异常四、当我需要添加一个WCF接口,以实现一个查询功能,比如查询所有组...
    99+
    2022-11-11
  • C#中如何使用属性和自动实现属性简化代码
    C#中如何使用属性和自动实现属性简化代码,需要具体代码示例在C#编程中,使用属性和自动实现属性可以帮助我们简化代码,提高代码的可读性和可维护性。属性允许我们通过封装字段来访问和更改对象的状态,而自动实现属性则进一步简化了属性的创建过程。属性...
    99+
    2023-10-22
    属性(属性) 自动实现属性(自动属性) 代码简化(简化代码)
  • 如何使用htmlprettify美化HTML代码
    这篇文章主要介绍了如何使用htmlprettify美化HTML代码,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。Sublime Text是广...
    99+
    2022-10-19
  • VB.NET正则表达式如何简化程序代码
    小编给大家分享一下VB.NET正则表达式如何简化程序代码,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!1、VB.NET正则表达式处理类在VB.NET正则表达式必须...
    99+
    2023-06-17
  • SpringDataRedis简单使用示例代码
    目录spring-data-redisspring-data-redis的特性SpringBoot的版本是2.xSpringDataRedis自动序列化Spring默认提供的Stri...
    99+
    2023-02-03
    SpringDataRedis使用 SpringData Redis
  • 如何将JavaScript代码改成ES6语法
    这篇文章给大家分享的是有关如何将JavaScript代码改成ES6语法的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。目录* 核心例子 * 修改成静态变量(co...
    99+
    2022-10-19
  • 怎么用Async函数简化异步代码
    今天就跟大家聊聊有关怎么用Async函数简化异步代码,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。Promise 在 JavaScript 上发布之...
    99+
    2022-10-19
  • Java使用lambda表达式简化代码的示例详解
    目录目的推理一下实现接口,使用方法内部类实现接口,使用方法局部内部类实现接口,使用方法匿名内部类实现接口,使用方法使用lamda表达式的,实现方法可带参数只有一个参数有返回值只有一条...
    99+
    2022-11-13
    Java lambda表达式简化代码 Java lambda表达式 Java 简化代码
  • Go代码格式化gofmt如何使用
    本篇内容介绍了“Go代码格式化gofmt如何使用”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!gofmt使用对于一门编程语言来说,代码格式化...
    99+
    2023-07-06
  • 如何使用PHP7的null合并运算符简化代码的逻辑判断?
    如何使用PHP7的null合并运算符简化代码的逻辑判断?在PHP7中引入了一个新的运算符,即null合并运算符(),该运算符可以减少代码中繁琐的逻辑判断。通过使用null合并运算符,我们可以简化对于变量是否为null的判断,从而简化代码逻辑...
    99+
    2023-10-22
    PHP null合并运算符 简化代码
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作