2

我的页面(myScript.js)中包含以下脚本。

   function constr(args) {
        var param1 = args;

        function drawTable(element, tableRows) {
           // code that creates table with rows = tableRows and appends table to the passed element
        }

        drawContainer(); // call to and extended functionality
    }

var obj = new constr(10);

但是我需要通过其他一些私有方法来扩展 obj。这些方法将从另一个脚本 (myScript2.js) 加载,其中一些必须覆盖 constr 中的一些私有方法。扩展方法也应该能够与 param1 和 constr 中的其他私有变量一起工作。理想情况下,一切都是私人的。

在 myScript2.js 我应该有类似的东西

constr.prototype = (function() {
   return {
     constructor:constr,
     drawContainer: function() {
         var container = document.createElement("DIV");

         document.append(container);
         drawTable(container, param1);
     }
   }
})();

通过执行以下原型,我假设通过另一个私有类-“drawContainer”扩展 constr 函数,并且能够从原始 constr 函数调用 drawTable 并访问 param1。

以下示例不起作用。我为什么这样做的想法是我想要一个 js 对象的模块,它在需要时向页面加载额外的功能。

4

0 回答 0