这段 js 代码有简洁的写法吗?
var emails = [];
result.userList.map((item) => {
emails.push(item.mailAccount);
})
$("#confirm_users").html(emails.join("<br/>"))
15 回复
这map用的心服口服😂
result.userList.map(item => item.mailAccount).join(’<br />’)
@meiwhu 看了你的感觉自己好蠢
这才 fp
const prop = (id) => (obj) => obj[id]
result.userList.map(prop('mailAccount')).join(’<br />’)
pipe(
prop('userList'),
map(prop('mailAccount')),
join('<br />')
)
这是 map 啊还是 foreach 啊
- babel-plugin-proposal-pipeline-operator
const curry = R.curry
const map = curry((fn, arr) => arr.map(fn))
const jon = curry((str, arr) => arr.join(str))
const html = $("#confirm_users").html
result
|> prop('userlist')
|> map(prop('mailAccount'))
|> join('<br />')
|> html
const map = fn => arr => arr.map(fn)
const jon = str => arr => arr.join(str)
const html = $("#confirm_users").html
result
|> prop('userlist')
|> map(prop('mailAccount'))
|> join('<br />')
|> html
@MiYogurt 不可以,这不优雅,过分使用js的动态性了,一次性代码可以这样玩,大工程绝对要禁止,反而2楼才是正确姿势
@zengming00 那深度使用 ramda 和 rxjs 的开发者怎么说。而且使用 clojure 的用户呢
@MiYogurt 出bug时,代码重构时你就知道这有多惨了
@zengming00 什么样的 bug,每一个函数都是单独可测试的,原子性极强,反而更利于调试才对,函数式讲究的是映射,每一个环节的函数都没有问题,那怎么会出 bug 呢?
@MiYogurt 等你哪天领悟到了再回来看这个
@yviscool 我对这种写法很感兴趣, 请问这是使用的什么包的写法?
@yviscool 了解了, 谢谢~