Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/418.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 原型中的注入方法,而不是分配_Javascript_Prototype - Fatal编程技术网

Javascript 原型中的注入方法,而不是分配

Javascript 原型中的注入方法,而不是分配,javascript,prototype,Javascript,Prototype,我正在阅读源代码,我试图理解为什么作者在构造函数的原型中注入方法,而不仅仅是分配它们: function VerbalExpression() { var verbalExpression = new RegExp(); // Add all the class methods VerbalExpression.injectClassMethods(verbalExpression); // Return the new object. return

我正在阅读源代码,我试图理解为什么作者在构造函数的原型中注入方法,而不仅仅是分配它们:

function VerbalExpression() {
    var verbalExpression = new RegExp();

    // Add all the class methods
    VerbalExpression.injectClassMethods(verbalExpression);

    // Return the new object.
    return verbalExpression;
}

/**
* @param {RegExp} verbalExpression An instance of RegExp on which to add VerbalExpressions methods
* @return {RegExp} A new instance of RegExp with injected methods
*/
VerbalExpression.injectClassMethods = function injectClassMethods(verbalExpression) {
    var method;
    // Loop over all the prototype methods
    for (method in VerbalExpression.prototype) {
        // Make sure this is a local method.
        if (VerbalExpression.prototype.hasOwnProperty(method)) {
            // Add the method
            verbalExpression[method] = VerbalExpression.prototype[method];
        }
    }

    return verbalExpression;
};
它与性能有关吗


谢谢。

他们正在分配
orarpression[method]=orarpression.prototype[method]中的方法。我不太明白你在搞什么。嗯,我不明白什么是FORT他们正在扩展一个带有自定义属性的正则表达式对象。他们在
orbalexpression[method]=orbalexpression.prototype[method]中分配方法。我不太明白你对什么感到困惑。嗯,我不明白什么是FORT他们正在用自定义属性扩展正则表达式对象。