<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                ??碼云GVP開源項目 12k star Uniapp+ElementUI 功能強大 支持多語言、二開方便! 廣告
                # JavaScript 構建器模式教程 > 原文: [http://zetcode.com/javascript/builderpattern/](http://zetcode.com/javascript/builderpattern/) JavaScript 構建器模式教程展示了如何使用構建器模式在 JavaScript 中創建對象。 ## 構建器模式 構建器模式是一種設計模式,可為創建對象提供靈活的解決方案。 構建器模式將復雜對象的構造與其表示形式分開。 生成器模式通過提供逐步的方法,使用簡單的對象來構建復雜的對象。 它屬于創作模式。 ## 構建器模式示例 以下示例將構建器模式與`TaskBuilder`結合使用。 `task_creator.js` ```js let Task = function(name, description, finished, dueDate) { this.name = name; this.description = description; this.finished = finished; this.dueDate = dueDate; } let TaskBuilder = function () { let name; let description; let isFinished = false; let dueDate; return { setName: function (name) { this.name = name; return this; }, setDescription: function (description) { this.description = description; return this; }, setFinished: function (finished) { this.finished = finished; return this; }, setDueDate: function (dueDate) { this.dueDate = dueDate; return this; }, build: function () { return new Task(name, description, isFinished, dueDate); } }; }; let task = new TaskBuilder().setName('Task A').setDescription('finish book') .setDueDate(new Date(2019, 5, 12)); console.log(task); ``` 在此示例中,我們有一個`TaskBuilder`生成`Task`對象。 ```js let Task = function(name, description, finished, dueDate) { this.name = name; this.description = description; this.finished = finished; this.dueDate = dueDate; } ``` 這是一個`Task`對象。 它具有四個屬性:`name`,`description`,`finished`和`dueDate`。 ```js return { setName: function (name) { this.name = name; return this; }, ... ``` `TaskBuilder`返回設置四個屬性的函數。 請注意,每個函數都返回`this`,即對當前對象的引用。 這樣,我們可以鏈接函數調用。 函數調用鏈稱為流暢 API 。 ```js let task = new TaskBuilder().setName('Task A').setDescription('finish book') .setDueDate(new Date(2019, 5, 12)); console.log(task); ``` 我們使用`TaskBuilder`創建任務。 在本教程中,我們介紹了 JavaScript 中的構建器模式。 列出[所有 JavaScript 教程](/all/#js)。
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看