ES6-代码编程风格(数组、函数)

1 数组

使用扩展运算符(...)复制数组。

const itemsCopy = [...items];

使用Array.from 方法将类似数组的对象转为数组。

const foo = document.querySelectorAll('.foo');

const nodes = Array.from(foo);

2 函数

立即执行函数可以写成箭头函数的形式。

(() => {
  console.log('Welcome to the Internet.');
})();

那些需要使用函数表达式的场合,尽量用箭头函数提代。因为这员工更简洁,而且绑定了this.

//bad
[1, 2, 3].map(function (x) {
  return x*x;
});
//good
[1, 2, 3].map((x) => {
  return x*x;
});
//best
[1, 2, 3].map(x => x*x);

简单的、单行的、不会复用的函数,建议采用箭头函数。 如果函数体较为复杂,行数较多,韩式应该采用传统的函数写法。

所有的配置项都应该集中在一个对象,放在最后一个参数, 布尔值不可以直接作为参数。

// bad
function divide(a, b, {option = false}) {}
// good
function divide(a, b, { option = false } = {}) {}

不要在函数体内使用arguments变量, 使用rest运算符(...)代替。

//bad
function concatenateAll () {
  const args = Array.prototype.slice.call(arguments); 
  return args.join('');
}
//good
function concatenateAll(...args) {
  return args.join('')
}

使用默认值语法设置函数参数的默认值。

//bad
function handleThings(opts) {
  opts = opts || {};
}
//good 
function handleThings(opts = {}) {
}
相关推荐
Monly2137 分钟前
Vue:Table合并行于列
前端·javascript·vue.js
DawnKylin1 小时前
【JavaScript】异步和期约
javascript
子非鱼9212 小时前
使用ES5和ES6求函数参数的和、解析URL Params为对象
前端·javascript·es6
爱学英语的程序员2 小时前
React 中常见的Hooks,安排!
前端·react.js·前端框架
zhanggongzichu2 小时前
零基础Vue入门6——Vue router
前端·javascript·vue.js·vue3·路由·vue router
NoneCoder2 小时前
JavaScript系列(64)--响应式状态管理实现详解
开发语言·javascript·ecmascript
stark张宇2 小时前
Web - CSS3过渡与动画
前端·css·css3
ssrswk92 小时前
通过制作docker镜像的方式在阿里云部署前端后台服务
前端·阿里云·docker
曹二7472 小时前
HTML&CSS&JS
javascript·css·html
qq_316837752 小时前
uniapp 打包apk 播放带透明通道的webm格式视频
java·前端·uni-app