Explicit chaining with lodash doesn't apply shortcut fusion
问题 While working with lodash, I found that it applied shortcut fusion when I used implicit chaining. $ node -e 'const _ = require("lodash"); _([1,2,3]).map(n => { console.log(n); return n }).find(n => n <= 1)' 1 But when I changed this snippet to use explicit chaining, it doesn't apply shortcut fusion. $ node -e 'const _ = require("lodash"); _.chain([1,2,3]).map(n => { console.log(n); return n }).find(n => n <= 1).value()' 1 2 3 As you can see, a function passed to map was called three times