惰性链

460 words

惰性链

Lodash库提供了惰性链的方式来求值。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
/** 抄自loadsh官网 */
var _ = require('lodash')

var users = [
{ user: 'barney', age: 36 },
{ user: 'fred', age: 40 },
{ user: 'pebbles', age: 1 },
]

var youngest = _.chain(users)
.sortBy('age')
.map(function (o) {
return o.user + ' is ' + o.age
})
.head()

/** 当执行 .value() 方法时才会去执行 `map` 中的方法, 中间一些不必要的操作已被合并 */
console.log(youngest.value()) // => "pebbles is 1"