[JS] Naam van het Object

Pagina: 1
Acties:

  • LuCarD
  • Registratie: Januari 2000
  • Niet online

LuCarD

Certified BUFH

Topicstarter
Ik wil graag de naam van het object weten is dat mogelijk binnen het object?


dus
code:
1
2
3
namedObject= new UserDefinedObject();

alert(namedObject.someFunction);

In boven staand voorbeeld:
Ik wil van uit someFunction de string namedObject terug krijgen.

Reden:
Ik schrijf met mijn object HTML code. vanuit deze html code is moet het mogelijk zijn om het object weer aan te spreken.
Iemand een leuk idee.

Programmer - an organism that turns coffee into software.


  • Bluestorm
  • Registratie: Januari 2000
  • Laatst online: 20-08-2022
Dat zit mij ook dwars... ik behelp me momenteel gewoon met:

namedObject = new MyObject("namedObject");

constructie... maar dat is niet altijd handig...

Tenminste... dat [ denk / zie / weet ] ik... | Javascript obfuscator | foto's en video's uploaden


  • eek
  • Registratie: Februari 2001
  • Laatst online: 06-04-2020

eek

@MagickNET

slechte hack oplossing moet vast anders kunnen

geef dat object een .name value en zet die in
je create function roep een functie aan die
de private var ( dus name ) returned.

Slechte hack maar werkt wel ;-)

Stond hier boven ook al, dit is misschien duidelijker

Skill is when luck becomes a habit.


  • LuCarD
  • Registratie: Januari 2000
  • Niet online

LuCarD

Certified BUFH

Topicstarter
Op dinsdag 08 januari 2002 16:16 schreef _eek_ het volgende:
slechte hack oplossing moet vast anders kunnen

geef dat object een .name value en zet die in
je create function roep een functie aan die
de private var ( dus name ) returned.

Slechte hack maar werkt wel ;-)

Stond hier boven ook al, dit is misschien duidelijker
Zoals je al zegt een slechte hack.... :'( :'(


btw. degene die er boven stond was toch duidelijker :+

Programmer - an organism that turns coffee into software.


  • LuCarD
  • Registratie: Januari 2000
  • Niet online

LuCarD

Certified BUFH

Topicstarter
Iemand anders nog een leuk idee??

Programmer - an organism that turns coffee into software.


  • Clay
  • Registratie: Oktober 1999
  • Laatst online: 22-06 13:51

Clay

cookie erbij?

Volgens mij kom je niet verder dan hacks of wazige oplossingen, een variable bevat een referentie naar het object, en 2 verschillende variabelen kunnen dus naar hetzelfde object refereren.
code:
1
2
var ding = new Object();
var dong = ding;

dong is nu geen kopie van ding, maar een extra referentie. Als je dus in ding iets aanpast, krijgt dong het ook mee:
code:
1
2
3
4
5
6
7
8
ding = new Object()
dong = ding;

// nieuwe property
ding.name = "ding"

// en dong "heeft" die nu ook
alert(dong.name)

een object zit dus niet echt in een variabele, die verwijst er slechts naar, dus dan zou die in het geval van een soort name property vaak een hele lijst names moeten hebben.

Instagram | Flickr | "Let my music become battle cries" - Frédéric Chopin


  • LuCarD
  • Registratie: Januari 2000
  • Niet online

LuCarD

Certified BUFH

Topicstarter
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
function objectje()
{
this.a=1;
this.test=test;
this.doIets=doIets;
}

function doIets()
{
 alert(this.a);
 setTimeout("this.test()",10);
}

function test()
{
alert(this.a);
}

function init()
{
 testt=new objectje;
 testt.doIets();
}

Zodra ik testt.doIets aanroep krijg ik een alert box met de waarde van a erin. Zodra de tweede functie wordt uitgevoerd krijg ik een error (undefined)

Iemand een idee hoe ik dat kan oplossen?

Programmer - an organism that turns coffee into software.


  • SchizoDuckie
  • Registratie: April 2001
  • Laatst online: 18-02-2025

SchizoDuckie

Kwaak

code:
1
this.test = 'test'

:?

Stop uploading passwords to Github!


  • Clay
  • Registratie: Oktober 1999
  • Laatst online: 22-06 13:51

Clay

cookie erbij?

setTimeout("this.test()",10);

javascript zit na een timout of interval van x/1000e seconde niet meer in de functie waar de timeout of interval vandaan is gezet. Die this.test() wordt zo dus niet vanuit je object uitgevoerd, maar gewoon als onafhankelijk stuk code, en dan is this geen referentie meer naar je object.

testt=new objectje();
Daar horen haken achter.

Instagram | Flickr | "Let my music become battle cries" - Frédéric Chopin

Pagina: 1