你好,世界,

我想创建数组的原型。

Array.prototype.foo = function(){}


但是我的原型必须仅在此数组仅包含特定对象(例如“ bar”)的情况下适用
是否可以在javascript中创建这样的原型? :

Array<bar>.prototype.foo = function(){}


谢谢!
詹姆士

最佳答案

我认为您可以做类似的事情。我能想到的最好方法是用附加功能装饰默认的JavaScript数组。以下是显示打印功能工作的示例。



let test = ['a', 'b', 'c'];

function decoratedArray(args) {
  let decorated = [...args];
  decorated.print = () => {
    decorated.forEach((arg) => {
      console.log(arg);
    });
  }

  return decorated;
}

test = decoratedArray(test);

test.print();

09-25 16:33