Programmer - an organism that turns coffee into software.
Heel makkelijk:Op donderdag 13 december 2001 14:41 schreef LuCarD het volgende:
Ik heb een onbekend object hoe kan ik bekijken welke elementen/properties hij heeft?
code:
1
2
3
4
5
6
7
8
9
10
11
| function blahBlah() {
this.name = "dit is een object";
this.doel = "uitleggen hoe dit werkt";
this.resultaat = "jij snapt het! :)";
}
naamVanObject = new blahBlah();
for (i in naamVanObject) {
document.write(i + " = " + naamVanObject[i] + "<br>");
} |
In plaats van 'naamVanObject' kun je natuurlijk ook iets van document.forms[0] neerzetten ofzo, of gewoon document. Moet je de document.write even vervangen voor een alert(), kun je lachen
Is erg handig idd om naar properties van objecten te kijken. Vooral als je wazige dingen moet gaan scripten en je weet eigenlijk niet welke dingen je in verschillede browsers tot je beschikking hebt.
Ik gebruik zelf altijd deze, is bijna hetzelfde maar dan in een alert:
Wat wel kut is is dat je van niet-custom objecten geen functies krijgt zo, alleen properties. Bijvoorbeeld zal Ns4 je hiermee niet vertellen dat een layer/div een functie resizeTo of moveTo heeft, al is dat wel zo.
Iemand een idee hoe dat wel kan?
Ik gebruik zelf altijd deze, is bijna hetzelfde maar dan in een alert:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
| function getProperties(obj) {
var res = "";
for(var i in obj) {
res += i +' \t- ';
if(typeof obj[i] == 'function') {
res += '[function]';
} else {
res += obj[i];
}
res += '\n';
}
alert(res);
} |
Wat wel kut is is dat je van niet-custom objecten geen functies krijgt zo, alleen properties. Bijvoorbeeld zal Ns4 je hiermee niet vertellen dat een layer/div een functie resizeTo of moveTo heeft, al is dat wel zo.
Iemand een idee hoe dat wel kan?
Instagram | Flickr | "Let my music become battle cries" - Frédéric Chopin
Ik heb er dit van gemaakt:
Maar sommige objecten verwijzen ook naar hun zelf
tenminste dat denk ik ... aangezien hij in een loop blijft lopen....
Hoe kan ik dit afvangen?
[Edit]
diepte tellertje gemaakt zodat hij niet meer over loopt maar hij is nog niet optimaal andere ideeen ?
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
| function checkObject(object)
{
test=window.open();
test.document.open();
//
// showObject(object,test.document);
//
// Updated ivm te veel recursie.
showObject(object,test.document,0);
test.document.close();
}
//
//function showObject(object,where)
//
// Updated ivm te veel recursie.
function showObject(object,where,depth)
{
where.write("<UL>");
for (i in object) {
//
// if (typeof object[i] == "object")
//
// Updated ivm te veel recursie.
if (typeof object[i] == "object" && depth < 10)
{
//
// Updated ivm te veel recursie.
depth++;
where.write("<LI><B>" + i + " = " + object[i] + "</B></LI>");
//
// showObject(object[i],where);
//
// Updated ivm te veel recursie.
showObject(object[i],where, depth);
}
else
{
where.write("<LI>" + i + " = " + object[i] + "</LI>");
}
}
where.write("</UL>");
} |
Maar sommige objecten verwijzen ook naar hun zelf
Hoe kan ik dit afvangen?
[Edit]
diepte tellertje gemaakt zodat hij niet meer over loopt maar hij is nog niet optimaal andere ideeen ?
Programmer - an organism that turns coffee into software.
Verwijderd
Ja, ik denk dat het hier door komt:Op donderdag 13 december 2001 15:38 schreef LuCarD het volgende:
Maar sommige objecten verwijzen ook naar hun zelftenminste dat denk ik ... aangezien hij in een loop blijft lopen....
Hoe kan ik dit afvangen?
[Edit]
diepte tellertje gemaakt zodat hij niet meer over loopt maar hij is nog niet optimaal andere ideeen ?
code:
1
| for (i in object) { |
Hier wordt i als een global variable gedeclareerd. Dat betekent dat als ie de recursie induikt en hij opnieuw het for-loopje gebruikt hij dezelfde variable i gebruikt om te 'tellen'.
Gebruik daarom altijd (kan bijna nooit kwaad, of je moet het zo bedoelen):
code:
1
| for (var i [...]) { |
Door de 'var' wordt het altijd een local variable en vermijd je dit probleem.
Maar helaas het werkte niet....Op donderdag 13 december 2001 15:56 schreef Blues het volgende:
een heleboel.....
Programmer - an organism that turns coffee into software.
Ja, dat zou ik nou ook wel willen weten.... Heb daar al eens naar lopen zoeken met Google alleen nooit wat kunnen vinden...Op donderdag 13 december 2001 15:25 schreef Clay het volgende:
[..]
Wat wel kut is is dat je van niet-custom objecten geen functies krijgt zo, alleen properties. Bijvoorbeeld zal Ns4 je hiermee niet vertellen dat een layer/div een functie resizeTo of moveTo heeft, al is dat wel zo.
Iemand een idee hoe dat wel kan?
Verwijderd
Dit is mijn beste suggestie: http://www.oreilly.com/catalog/jscript4/Op donderdag 13 december 2001 15:25 schreef Clay het volgende:
Bijvoorbeeld zal Ns4 je hiermee niet vertellen dat een layer/div een functie resizeTo of moveTo heeft, al is dat wel zo.
Iemand een idee hoe dat wel kan?
Kijk ook eens naar: http://www.brainjar.com/dhtml/domviewer/default.asp
thx....
Dat zocht ik.,...
Dat zocht ik.,...
Programmer - an organism that turns coffee into software.
Deze is goed!!Op donderdag 13 december 2001 16:21 schreef Blues het volgende:
[..]
Kijk ook eens naar: http://www.brainjar.com/dhtml/domviewer/default.asp
Vind de weergave alleen nog niet zo, maar dat verander ik zelf we ff...
Pagina: 1