javascript - es6 Proxy
巴扎黑
巴扎黑 2017-04-11 12:48:59
0
0
735

var pipe = (function () {
return function (value) {

var funcStack = [];
var oproxy = new Proxy({} , {
  get : function (pipeObject, fnName) {
    if (fnName === 'get') {
      return funcStack.reduce(function (val, fn) {
        return fn(val);
      },value);
    }
    funcStack.push(window[fnName]);
    return oproxy;
  }
});

return oproxy;

}
}());
var double = n => n * 2;
var pow = n => n * n;
var reverseInt = n => n.toString().split("").reverse().join("") | 0;

pipe(3).double.pow.reverseInt.get; // 63
1.不懂,为什么是window([fnName])
2.也不懂链式使用(应该是没有理解函数的意思吧)

巴扎黑
巴扎黑

全員に返信(0)
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!