javascript - 在单一值上使用 Lodash 链

标签 javascript lodash chaining

我想在单个字符串上链接一些方法,以便字符串操作看起来更具可读性。

但似乎 chain() 仅适用于集合。

这不是问题,我只是将其包装到数组中,但要获取最终值,我必须使用零索引运算符,这在这里看起来很奇怪。

var res = _(["   test   "])
   .map(function(s) { return s + s; })
   .map(_.trim)
   .value()[0];

或 typescript :

var res = _(["   test   "])
   .map(s => s + s)
   .map(_.trim)
   .value()[0];

如何解决?

最佳答案

lodash中有两个函数:

  1. thru - 将自定义函数应用于链中的值;
  2. tap - 应用自定义函数,但不传播其返回值;

示例(纯 ES6):

const res = _.chain("   test   ")
       .thru(s => s + s)
       .thru(_.trim)
       .value();

关于javascript - 在单一值上使用 Lodash 链,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39973994/

相关文章:

javascript - 如何对数组内不同的对象数组进行排序

r - data.table 链接不会创建新变量

Java 8 将函数应用于 Stream 的所有元素而不破坏流链

javascript - 使用服务器路由和 onBeforeAction 时出现异常

javascript - 渲染过程中调用的工作人员发来的帖子会去哪儿?

javascript - Lodash get vs. es6 后备值?

angularjs - Karma 测试 lodash 工厂

javascript - 解析 .then 方法和链接 |语法让我困惑

javascript - 如何根据下拉菜单隐藏输入

Javascript a4 纸张大小