博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
代码规范-箭头函数的四种写法
阅读量:6583 次
发布时间:2019-06-24

本文共 967 字,大约阅读时间需要 3 分钟。

在JS中箭头函数根据是否书写大小括号可分为以下四种情况。

// 不省略const fun = (value) => {    return value;};// 省略小括号const fun = value => {    return value;};// 省略大括号const fun = (value) => value;// 省略大括号与小括号const fun = value => value;复制代码

airbnb-javascript关于箭头函数的检查

如果函数体没有副作用的结构,省略大括号,否则使用大括号。

这里的副作用结构是指函数内的代码影响了函数外的代码。

const even = [];[1, 2, 3, 4].forEach((num) => {    if (num % 2 === 0) {        even.push(num);    }};复制代码

注意:airbnb文档没写,函数内代码块复杂时也需要大括号。

如果参数为一个,省略小括号,否则使用小括号。

《Google JavaScript Style Guide》中箭头函数的提议

大括号可有可无,建议始终写小括号。

个人看法

针对不同的函数结构选择是否使用括号的方式会带来两个问题:

  • 代码不一致:就像一个PPT中不应该一会左对齐一会右对齐一会居中对齐。
  • 省略括号不易扩展:单个参数变多个参数要加小括号,直接返回代码变为多行计算后再返回代码需要增加大括号

我认为有这种争议时应该选择兼容性更强的不省略大括号与小括号,在配置种关闭了对这四种写法的检查,但是遵循约定大于配置的原则,始终按照一种风格书写。

eslint的配置

根据文档,在eslint中以下两个模块控制以上四种情况的书写,可对其进行配置(代码如下)

  • arrow-parens
  • arrow-body-style
// .eslintrc.jsmodule.exports = {  extends: 'airbnb',  rules: {    'arrow-parens': 'off',    'arrow-body-style': 'off',  },};复制代码

转载于:https://juejin.im/post/5d073629f265da1b934e021a

你可能感兴趣的文章
好博客地址推荐(长期更新)
查看>>
Android零基础入门第43节:ListView优化和列表首尾使用
查看>>
table实现等高的优势
查看>>
oracle 11g dataguard 使用快照实现临时读写
查看>>
阿里云人才市场,百家公司、近千职位等你加入!
查看>>
不同时间阶段的seo优化技术侧重点
查看>>
机器学习概念原理及常用算法
查看>>
Java JDBC直连
查看>>
最近搭阿里云redis集群遇到的坑
查看>>
request方法
查看>>
贷款计算公式——java实现
查看>>
教你给IDEA安装插件
查看>>
在windows上安装curl
查看>>
使用EasyWechat为“WX公众号”增加一个访问统计的方案实现
查看>>
数据库的工具类
查看>>
Spring Cloud Consul综合整理
查看>>
95后美女当“妈”,养了对机器人双胞胎
查看>>
Dart 学习笔记2 - numbers数字 ,operator运算符号,if else 条件语句,for loop循环语句,mac环境安装Dart2...
查看>>
MaxCompute JOIN优化小结
查看>>
3.4 usermod命令 3.5 用户密码管理 3.6 mkpasswd命令
查看>>