let 取代 var

let 和 const 之间优先使用 const

字符串
  静态字符串一律使用单引号或反引号,不使用双引号 动态字符串使用反引号 ``
解构赋值
  使用数组成员对变量赋值时,优先使用解构赋值
  函数的参数如果是对象的成员,优先使用解构赋值
  如果函数返回多个值,优先使用对象的解构赋值,而不是数组的解构赋值,这样便于以后添加返回值,以及更改返回值的顺序
对象
  单行定义的对象最后一行不以逗号结尾,多行定义的对象,最后一个成员以逗号结尾
  对象尽量静态化,一旦定义就不得随意添加新的属性.如果添加属性不可避免,要使用Object.assign() 方法
  如果对象的属性名是动态的,可以在创造对象的时候使用属性表达式定义
  对象的属性和方法尽量采用简洁表达法这样亦与描述和书写
数组
  使用扩展运算符(...)来复制数组
函数
  立即执行的函数可以写成箭头函数
  那些需要使用函数表达式的场合,尽量用箭头函数代替因为这样更简洁,而且绑定了this
  箭头函数取代Function.prototype.bind 不应再用 self/_this/that绑定this
  所有配置项都应该集中在一个对象,放在最后一个参数,布尔值不可以直接作为参数
  不要再函数体内使用arguments变量,使用rest运算符(...)代替 rest运算符可以提供一个真正的数组
  使用默认值语法设置函数参数的默认值
Map结构

Class
  总是用Class取代prototype的操作,因为Class的写法更简洁,更易于理解
  使用extends实现继承,因为这样更简单,不存在破坏instanceof运算的危险

模块
  Module语法是javaScript模块的标准写法,要坚持使用这种语法
  如果模块只有一个输出值,就使用export default ,模块有多个输出值,就不使用export default
  不要同时使用export default与普通export
  不要再模块输入中使用通配符,因为这样可以确保模块中有一个默认输出
  如果模块默认输出一个函数,函数名首字母应该小写
  如果模块默认输出一个对象,对象名首字母应该大写

Es6编程风格的更多相关文章

  1. ES6 编程风格

    1.块级作用域 (1)使用let代替var 好处:变量应该只在其声明的代码块内有效:var命令存在变量提升效用,let命令没有这个问题. (2)全局常量 在let和const之间,建议优先使用cons ...

  2. ES6深入学习记录(三)编程风格

    今天学习阮一峰ES6编程风格,其中探讨了如何将ES6的新语法,运用到编码实践之中,与传统的JavaScript语法结合在一起,写出合理的.易于阅读和维护的代码. 1.块级作用域 (1)let 取代 v ...

  3. 浅谈前端JavaScript编程风格

    前言 多家公司和组织已经公开了它们的风格规范,详细可參阅jscs.info,以下的内容主要參考了Airbnb的JavaScript风格规范.当然还有google的编程建议等编程风格 本章探讨怎样使用E ...

  4. [转]ECMAScript 6 入门 -编程风格

    本文转自:http://es6.ruanyifeng.com/#docs/style 编程风格 块级作用域 字符串 解构赋值 对象 数组 函数 Map结构 Class 模块 ESLint的使用 本章探 ...

  5. C++服务器开发之基于对象的编程风格

    Thread.h #ifndef _THREAD_H_ #define _THREAD_H_ #include <pthread.h> #include <boost/functio ...

  6. 个人c语言编程风格总结

    总结一下我个人的编程风格及这样做的原因吧,其实是为了给实验室写一个统一的C语言编程规范才写的.首先声明,我下面提到的编程规范,是自己给自己定的,不是c语言里面规定的. 一件事情,做成和做好中间可能隔了 ...

  7. Google Java编程风格指南

    出处:http://hawstein.com/posts/google-java-style.html 声明:本文采用以下协议进行授权: 自由转载-非商用-非衍生-保持署名|Creative Comm ...

  8. 编程风格(Coding Style)要求

    编程风格(Coding Style)要求2.1.1 文件(1) 每个模块(module)一般应存在于单独的源文件中,通常源文件名与所包含模块名相同.(2) 每个设计文件开头应包含如下注释内容:? 年份 ...

  9. Javascript编程风格

    Douglas Crockford是Javascript权威,Json格式就是他的发明. 去年11月他有一个演讲(Youtube),谈到了好的Javascript编程风格是什么.我非常推荐这个演讲,它 ...

随机推荐

  1. Python机器学习笔记——One Class SVM

    前言 最近老板有一个需求,做单样本检测,也就是说只有一个类别的数据集与标签,因为在工厂设备中,控制系统的任务是判断是是否有意外情况出现,例如产品质量过低,机器产生奇怪的震动或者机器零件脱落等.相对来说 ...

  2. acwing 50. 序列化二叉树

    地址 https://www.acwing.com/problem/content/46/ 请实现两个函数,分别用来序列化和反序列化二叉树. 您需要确保二叉树可以序列化为字符串,并且可以将此字符串反序 ...

  3. LeetCode 1245 树的直径

    地址 https://leetcode-cn.com/contest/biweekly-contest-12/problems/tree-diameter/ 给你这棵「无向树」,请你测算并返回它的「直 ...

  4. Python连载52-SOCKET编程示例

    一.UDP编程 1.客户端Client:发起访问的一方. 2.服务器端 3.server段编程 (1)建立socket,socket是负责具体通信的一个实例 (2)绑定,为创建的socket指派固定的 ...

  5. hive on spark 常用配置

    常用设置 reset; set hive.execution.engine=spark; set hive.map.aggr = false; set hive.auto.convert.join = ...

  6. swoole中http_server的配置与使用

    swoole中为我们提供了一个swoole_http_server类,方便我们处理http请求. 但是它对http协议的支持并不完整,所以一般建议在前面加一层nginx进行代理,对于php文件的处理交 ...

  7. 【Ajax】Ajax入门总结

    目录 Ajax( Asynchronous JavaScript and XML ) 向服务器发送请求 服务器回应请求 本文内容总结自 w3cschool: https://www.w3school. ...

  8. ASP.NET Core 使用 Redis 实现分布式缓存:Docker、IDistributedCache、StackExchangeRedis

    ASP.NET Core 使用 Redis 实现分布式缓存:Docker.IDistributedCache.StackExchangeRedis 前提:一台 Linux 服务器.已安装 Docker ...

  9. 用 Python 监控知乎和微博的热门话题

    前言 文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理. 作者: TED Crossin的编程教室 PS:如有需要Python学习资料 ...

  10. String substring(int start,int end)截取当前字符串中指定范围内的字符串

    package seday01;/** * String substring(int start,int end) * 截取当前字符串中指定范围内的字符串. * java api有一个特点:通常用两个 ...