使用Square Brackets的原型(仅限Vanilla JS解决方案)

时间:2016-10-03 19:16:55

标签: javascript prototype

如何使用(方括号)将原型应用于构造函数。我不想使用点表示法,因为它不评估变量而是返回变量名称,我希望原型更具动态性。以下是我想要实现的目标,但我无法让它发挥作用。

var prototyper = function(constructor_name, prototype_name, data)
{
     main[constructor_name][__prototype__][prototype_name] = new Function(data);
}

原型建立者( “分类”, “alert_classification”, “警报(this.classification)”);

1 个答案:

答案 0 :(得分:1)

您需要变量属性(…[constructor_name]…[prototype_name])的括号表示法,但需要常量属性….prototype的点表示法。您需要将它们混合到

function prototyper(constructor_name, method_name, fn) {
    main[constructor_name].prototype[method_name] = fn;
}

jsfiddle demo