Это необязательно. Это всего лишь одна из многих традиций, чемпионы ООП, чтобы попытаться превратить прототипное наследование JavaScript в классическое наследование. Единственное, что делает следующий
Student.prototype.constructor = Student;
, это то, что теперь у вас есть ссылка на текущий «конструктор».
В ответе Уэйн, который был отмечен как правильный, вы можете сделать то же самое, что следующий код делает
Person.prototype.copy = function() {
// return new Person(this.name); // just as bad
return new this.constructor(this.name);
};
с кодом ниже (просто замените this.constructor на Person)
Person.prototype.copy = function() {
// return new Person(this.name); // just as bad
return new Person(this.name);
};
Слава Богу, что с ES6 classic Натураторы-пуристы могут использовать собственные операторы языка, такие как класс, extends и super, и нам не нужно видеть, как исправления prototype.constructor и родительские рефери.
Итак, после исследования я нашел решение - вы должны использовать локали .
Эта строка кода мне очень помогла:
chart.language.locale = am4lang_[locale];
В качестве разделителя пустых строк я использовал am4lang_ru_RU.
Кстати, если вам нужно создать свой собственный номер, строки и т. Д., Вы можете создать свои локали для этого.