我正在使用Babel通过内置的本机Array扩展我的课程
class NewArray extends Array { first() { return this[0]; } } var a = new NewArray(1, 2, 3); console.log(a.length); // 3 console.log(a); // [ 1, 2, 3 ] console.log(a.first()); // trigger error
在a.first()中,出现此错误:
console.log(a.first()); ^ TypeError: a.first is not a function
我是否应该做更多的事情来扩展内置的本机?
谢谢!
Babel不支持扩展本机类。它已在5.2.17版本中删除
它不可能被添加,因为它不是可以模拟的功能。我们将不得不等待浏览器的本机支持(有些人已经在实验模式下支持它)。这也意味着它当前在不同的浏览器中的行为会有所不同。