抽象子类或者　mix-ins　是类的模板。　一个　ECMAScript　类只能有一个单超类,所以想要从工具类来多重继承的行为是不可能的。子类继承的只能是父类提供的功能性。因此,例如,从工具类的多重继承是不可能的。该功能必须由超类提供。　一个以超类作为输入的函数和一个继承该超类的子类作为输出可以用于在ECMAScript中实现混合:　var　calculatorMixin　=　Base　=>　class　extends　Base　{　calc　var　randomizerMixin　=　Base　=>　class　extends　Base　{　randomize　使用　mix-ins　的类可以像下面这样写:　class　Foo　{　}　class　Bar　extends　calculatorMixin　(　randomizerMixin　(　Foo　)　)　{　}　Specification　BCD　tables　only　load　in　the　browser　无法重新定义类。尝试这样做会产生一个　SyntaxError　.　如果您正在使用Web浏览器(例如Firefox　Web控制台,　(　Tools　>　Web　Developer　>　Web　Console　)并且您两次“运行”具有相同名称的类的定义,您将收到一个　SyntaxError:　redeclaration　of　let　ClassName　;　.　(请参阅中有关此问题的进一步讨论bug　1428672.)　在Chrome开发者工具中执行类似的操作会给您一个以下信息:　Uncaught　SyntaxError:　Identifier　'　ClassName　'　has　already　been　declared　at　:1:1　.