Zurück   Flashforum > Flash > ActionScript > ActionScript 1

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 12-02-2004, 12:56   #1 (permalink)
Neuer User
 
Registriert seit: Sep 2003
Ort: Zürich, Schweiz
Beiträge: 75
Problem mit einer Funktion (removeDoubles von einem Array)

Hi!

Es geht um dieses Funktion:
ActionScript:
  1. Array.prototype.removeDoublesDR = function() {
  2.     var obj = {}, temp = [];
  3.     for (var i = 0; i < this.length; i++) obj[this[i]] = this[i];
  4.     for (var i in obj) temp.unshift(obj[i]);
  5.     return temp;
  6. };

Ich fülle zuerst das Array DiagrammRollen ab und möchte, falls vorhanden, die doppelten entfernen. Das klappt auch hanz gut, jedoch...
ActionScript:
  1. for (var a = 0; a < xml_phasenverantwortlich.length; a++) {
  2.         DiagrammRollen[a] = xml_phasenverantwortlich[a];
  3.         ++anzahlDiagrammRollen;
  4.     }
  5.     trace(DiagrammRollen) // Ausgabe: Verkaufsverantwortlicher,Verkaufsverantwortlicher
  6.     DiagrammRollen = DiagrammRollen.removeDoublesDR();
  7.     trace(DiagrammRollen) // Ausgabe: Verkaufsverantwortlicher,[type Function]
  8.  
Er stellt immer ein [type Function] am Ende des Array, warum?

greezzz
linuxkiller ist offline   Mit Zitat antworten
Alt 12-02-2004, 13:38   #2 (permalink)
nerdig working
 
Benutzerbild von michael
 
Registriert seit: Jul 2001
Ort: Hamburg
Beiträge: 5.832
oh, der prototype kommt mir so bekannt vor

der fehler liegt in jedem fall in der forschleife, da übergibst du eine funktion (vieleicht ein xml-onLoad) die (warum auch immer) in xml_phasenverantwortlich gespeichert ist.

wenn man die forschleife weglässt und den Array von Hand erstellt, tritt der Fehler ja nicht auf.


gruß
michael
michael ist offline   Mit Zitat antworten
Alt 12-02-2004, 15:27   #3 (permalink)
Neuer User
 
Registriert seit: Sep 2003
Ort: Zürich, Schweiz
Beiträge: 75
Es ist kein XML Object, sondern ein Node wurde in diesem Array gespeichert, um es weiter zu verarbeiten. Das Array wird auch wirklich von Hand erstellt, sprich ein
ActionScript:
  1. DiagrammRollen = new Array(1);
resp. ohne der eins (1) in der Klammer, denn es funktioniert beides nicht
linuxkiller ist offline   Mit Zitat antworten
Alt 12-02-2004, 16:08   #4 (permalink)
nerdig working
 
Benutzerbild von michael
 
Registriert seit: Jul 2001
Ort: Hamburg
Beiträge: 5.832
mit von hand erstellen meinte ich auch von hand füllen
michael ist offline   Mit Zitat antworten
Alt 12-02-2004, 16:41   #5 (permalink)
helpQLODhelp
 
Benutzerbild von bokel
 
Registriert seit: Feb 2002
Ort: Köln
Beiträge: 8.505
Sieht ganz so aus, als hättest du einen Object.prototype nicht versteckt, wie es sich gehört . Such mal nach AsSetPropFlags.

mfg r.
bokel ist offline   Mit Zitat antworten
Alt 13-02-2004, 09:46   #6 (permalink)
Neuer User
 
Registriert seit: Sep 2003
Ort: Zürich, Schweiz
Beiträge: 75
Zitat:
Geschrieben von gutknut
mit von hand erstellen meinte ich auch von hand füllen
Ach so!
Hey, danke für deine Hilfe, bei mir gang da soeben ein Licht auf und nun klappt's!
linuxkiller ist offline   Mit Zitat antworten
Alt 24-08-2004, 10:11   #7 (permalink)
Neuer User
 
Registriert seit: Sep 2003
Ort: Zürich, Schweiz
Beiträge: 75
Unhappy Whoops!

...alte Software ausgegraben und sie funktioniert wieder einmal nicht! Genau das selbige Problem, mit dem selben Quellcode wie in meinem ersten Beitrag beschrieben.

Wie wende ich das das ASSetPropFlags() an? Bitte um Hilfe...

greezzz linuxkiller
linuxkiller ist offline   Mit Zitat antworten
Antwort

Lesezeichen

Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks sind an
Pingbacks sind an
Refbacks sind an



Alle Zeitangaben in WEZ +1. Es ist jetzt 05:08 Uhr.

Domains, Webhosting & Vserver von Host Europe
Unterstützt das Flashforum!
Adobe User Group


Copyright ©1999 – 2012 Marc Thiele