Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Dziedziczenie, przekroczono liczbę rekurencji
Forum PHP.pl > Forum > Po stronie przeglądarki
daniel1302
Witam wyrzuca mi błąd w takiej funkcji:
  1. Object.prototype.extend = function () {
  2. var i = 0;
  3. var tempObj = null;
  4. var property = null;
  5.  
  6.  
  7. for (i in arguments) {
  8. tempObj = new arguments[i];
  9. for (property in tempObj) {
  10. this[property] = tempObj[property];
  11. }
  12. }
  13. };


I zwraca błąd konsoli:
  1. too much recursion
  2. for (i in arguments) {


Jakimś cudem wywołuje mi się funkcja extend i chyba sie zapętla. Do tego doszedłem. Ale nie wiem dlaczego.

A dziedziczenie używam tak:

  1. var LineChart = function () {
  2. var html = '';
  3. this.extend(ChartAbstract);
  4. }



Jeśli w funkcji extend na sztywno utworzę obiekt tempObj = new AbstractClass; i przekopiuje elementy(czyli po prostu usunę zewnętrzną pętlę) to wszystko jest ok.
nospor
A czego tu nie rozumiesz? W konstruktorze klasy odpalasz funkcje EXTEND, zas w funkcji EXTEND odpalszz konstruktory i tak w kołko....
daniel1302
Tak, ale w funkcji extend odpalam konstruktor klasy Bazowej a funkcje extend odpalam w klasie Potomnej.
nospor
Sobie poalertuj troche to zobaczysz co sie gdzie odpala i sam zobaczysz.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.