0
コードのこのビットは:Lodash - 変数宣言の後も連鎖できますか?
var foo = [1, 2, 3],
bar = _.chain(foo)
.map(number => number * 2);
console.log(bar.value());
bar.tap(numbers => {
numbers.push(10000);
});
console.log(bar.value());
10000
がbar.value()
に追加されません。しかし、実際の可変チェーン中にタップをチェーンに移動すると、正常に動作します。私はこれがtap
が呼び出されたコンテキストと関係があると確信していますが、誰でも説明できますか?鎖を初期化し、後でそれを修正するのがいいと思うようです。ありがとう!デモンストレーション用
ビン:jsbin.com上http://jsbin.com/kidomeqalo/edit?html,js,console
JSビン
あなたは確かに '.tap(numbers => {{' '? – Bergi
のように見えます。他のほとんどのメソッドのように' tap''は怠惰です。 '.value結果は(もちろん、副作用のために使うべきではありません) – Bergi
@Bergiはい、ありがとう、それはタイプミスです – Greg