找不到我添加到外部javascript库的方法

时间:2018-06-05 06:51:35

标签: javascript prototype jspdf prototype-chain

我是Javascript的新手。 我想在名为jsPDF的外部库中添加一个方法。 所以我尝试将一个名为'addHangle'的函数添加到jsPDF.prototype中 但是jsPDF的目标并没有找到我的方法。

我试过调试,发现jsPDF.prototype是Object.prototype的指针

为什么会这样?我认为doc.construct是jsPDF和doc的指针.__ proto__是jsPDF.prototype的指针

有没有人知道原因?请告诉我。 我的代码如下。

{{1}}

2 个答案:

答案 0 :(得分:0)

因为jsPDF构造函数返回API对象。 以下示例可帮助您了解doc原型不是jsPDF

的原因
var P = function() {
    var API = {};

    // This is constructor of P
    function P() {
      // Do something...
      API.a = function(val){return val};
      return API;
    }

    return P;
};

var p = new P();
var result = p instanceof P; // false

您可以看到new jsPDF()jsPDF GitHub

时调用的实际情况

如果要插入自己的方法,则必须将其设为jsPDF插件。 您可以在https://github.com/MrRio/jsPDF/tree/master/plugins

中引用jsPDF的其他插件

答案 1 :(得分:-1)