Javascript 为所有对象属性设置原型

Javascript 为所有对象属性设置原型,javascript,Javascript,假设我有一个目标: var Animals = { cow: { id: 1, value: "moo" }, chicken: { id: 2, value: "cluck" } }; 我想在所有属性(cow、chicken等)上重写toString方法。我知道我可以单独做,但有什么东西可以在一次通话中涵盖所有属性吗?比如: Animals.properties.prototype.toString = function() { retur

假设我有一个目标:

var Animals = {
  cow: {
    id: 1,
    value: "moo"
  },
  chicken: {
    id: 2,
    value: "cluck"
  }
};
我想在所有属性(cow、chicken等)上重写toString方法。我知道我可以单独做,但有什么东西可以在一次通话中涵盖所有属性吗?比如:

Animals.properties.prototype.toString = function() {
  return this.value;
}

您唯一能做的就是迭代对象的属性:

for (var prop in Animals) {
    Animals[prop].toString = ...;
}

如果您使用构造函数从普通动物原型创建动物实例,您可以: