1560320
回复 (15)
F
确实太过简洁,也影响阅读,我刚开始接触es6这种写法,也是一脸懵逼
A
引用 atian25@alsotang 哈哈,我之前也作过,当时 Egg 的 Controller 还是这种写法时: 尝试转换:
@atian25 其实吧。。。我一直喜欢古老的 function 这种写法。。。箭头函数那种我写的时候还要去思考单行跨行的问题和是否需要return的问题。虽然字少,反而卡壳。
S
这不符合函数式编程规范, 它依赖了外部变量times ,改成下面这样就更好理解了
const times=x=>f=>{
while(x>0){
f()
x--
}
}
A
A
N
A
引用 alsotang@atian25 说得好。这种写法在我看来是用简洁的写法故意制造混乱
哈哈,我之前也作过,当时 Egg 的 Controller 还是这种写法时:
module.exports = function(app) {
class HomeController extends app.Controller {
// ...
};
return HomeController;
};
尝试转换:
// 第一次简化(这样其实是最佳的)
module.exports = app => {
class HomeController extends app.Controller {
// ...
};
return HomeController;
};
// 第二次简化,因为嫌弃 return 麻烦
module.exports = app => class HomeController extends app.Controller {
// ...
};
// 第三次简化,因为觉得第一行太长,改成这样,但这个括号。。。最后还是第一种好
module.exports = app => (
class HomeController extends app.Controller {
// ...
}
);
A
A
N
A
这种只能说是自己作,就跟当年的 ++i++ 一样。
不该简写的地方没必要简写。
其实很简单的:
const times = x => (
f => {
// ...
}
)
const times = x => {
return f => {
// ...
}
}
const times = function(x) {
return function (f) {
// ...
}
}
Y
个人感觉:ES6的语法糖有些多,造成代码的可读性有些.......当然:语法糖很具有两面性。
L
说明语法过于简洁,也会影响阅读
S
W
柯里化
参与回复
登录后即可参与回复。登录