IE11 不支持 ECMA Script 6。 所以我不能在 IE11 中使用“类”语法。 那么,如何在IE11(ECMA5)中扩展obj?
//only ECMA6+
// do not work in IE11
class ChildObj extends google.maps.LatLng {
constructor(child) {
super(Number(child.lat), Number(child.lng));
this.additionalProp = child;
}
}
//ECMA5 -> ????
我不知道定义子类的正确方法是什么,例如上面显示的 ChildObj,在 ECMA5 中。
我认为 jquery $.extend 不是扩展,而是合并属性。 那么,如何在子类中调用父类的构造函数呢?
最佳答案
According to MDN doc ,你会这样做:
function childObj() {
google.maps.LatLng.call(this);
}
childObj.prototype = Object.create(google.maps.LatLng.prototype);
childObj.prototype.constructor = Rectangle;
但是如果你想使用 ES6 组件但仍然有 ES5 代码,一个更简单的解决方案是使用转译器。例如babel会成功的。
关于javascript - 如何在 ECMA5(IE11) 中扩展 javascript 类?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40539652/