gpt4 book ai didi

javascript - 使用 Babel 扩展 ES6 中的内置原生程序

转载 作者:可可西里 更新时间:2023-11-01 01:16:46 26 4
gpt4 key购买 nike

我正在使用 Babel 通过内置的原生数组扩展我的类

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

我是否应该做更多的事情来扩展一个内置的 native?

谢谢!

最佳答案

Babel 不支持扩展原生类。它在 5.2.17 版本中被删除(参见 this commit )

它已被删除,因为它无法正常工作,请参阅错误:https://phabricator.babeljs.io/T1424

它不太可能被添加,因为它不是可以模拟的功能。我们将不得不等待浏览器的原生支持(有些浏览器现在已经在实验模式下支持)。这也意味着它目前在不同浏览器中的行为会有所不同。

关于javascript - 使用 Babel 扩展 ES6 中的内置原生程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33832646/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com