|
NO:函数成果紊乱,一个函数包括多个成果。最后就像能以一当百的先生傅一样,被乱拳打死(乱拳(成果伟大函数)打死先生傅(老措施员))
- function sendEmailToClients(clients) {
- clients.forEach(client => {
- const clientRecord = database.lookup(client)
- if (clientRecord.isActive()) {
- email(client)
- }
- })
- }
YES: 成果拆解,
- function sendEmailToActiveClients(clients) { //各个击破,易于维护和复用
- clients.filter(isActiveClient).forEach(email)
- }
- function isActiveClient(client) {
- const clientRecord = database.lookup(client)
- return clientRecord.isActive()
- }
(6)优先行使呼吁式编程
NO: 行使for轮回编程
- for(i = 1; i <= 10; i++) { // 一看到for轮回让人顿生不想看的情愫
- a[i] = a[i] +1;
- }
YES:行使呼吁式编程
- let b = a.map(item => ++item) // 怎么样,是不是很好领略,就是把a的值每项加一赋值给b就可以了。此刻在javascript中险些全部的for轮回都可以被map,filter,find,some,any,forEach等呼吁式编成代替。
(7)函数中过多的回收if else ..
No: if else过多
- if (a === 1) {
- ...
- } else if (a ===2) {
- ...
- } else if (a === 3) {
- ...
- } else {
- ...
- }
YES: 可以行使switch更换或用数组更换
- switch(a) {
- case 1:
- ....
- case 2:
- ....
- case 3:
- ....
- default:
- ....
- }
- Or
- let handler = {
- 1: () => {....},
- 2: () => {....}.
- 3: () => {....},
- default: () => {....}
- }
- handler[a]() || handler['default']()
三、只管行使ES6,有可以能的话ES7中新语法
(只摆列最常用的新语法,说真话,有些新语法不怎么常用)
(1)只管行使箭头函数
NO:回收传统函数
- function foo() {
- // code
- }
- YES:行使箭头函数
- let foo = () => {
- // code
- }
(2)毗连字符串
NO:回收传统+号
- var message = 'Hello ' + name + ', it's ' + time + ' now'
YES:回收模板字符
- var message = `Hello ${name}, it's ${time} now`
(3)行使解构赋值
(编辑:湖南网)
【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!
|