• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Jak prawidłowo używać operatory new i delete w javascript?

Object Storage Arubacloud
0 głosów
632 wizyt
pytanie zadane 4 czerwca 2015 w JavaScript przez Pieniek Gaduła (3,330 p.)
Hej ostatnio zorientowałem się że bez operatora new moje programy w javascript działają tak samo. Stawianie tego operatora coś zmienia? Zauważyłem też że operator delete może skasować jedynie pojedyńczą zmienną. Da się go jakoś przeciążyć (lub zrobić coś innego) by używanie go na obiektach miało jakiś sens?

1 odpowiedź

+1 głos
odpowiedź 4 czerwca 2015 przez Comandeer Guru (601,110 p.)
wybrane 4 czerwca 2015 przez Pieniek
 
Najlepsza

Jeśli Twoje programy bez operatora new działają tak samo, to znaczy, że źle go używasz ;) Prosty przykład: http://jsfiddle.net/Comandeer/yed0m4qx/

Co do delete na obiektach przeca dobrze działa. Natomiast do tablic polecam Array.prototype.splice

komentarz 4 czerwca 2015 przez Pieniek Gaduła (3,330 p.)
dzięki wielkie! Bardzo pomogłeś mi tym przykładem : )
komentarz 4 czerwca 2015 przez Pieniek Gaduła (3,330 p.)

cały czas mam problem z delete :  /
Jeśli możesz zobaczyć: https://jsfiddle.net/pieniek/en2ksm2f/2/

komentarz 4 czerwca 2015 przez Comandeer Guru (601,110 p.)

https://jsfiddle.net/Comandeer/j962166d/1/ → delete usuwa własności obiektów; a że zmienna globalna jest własnością window to można to ugryźć w ten sposób ;)

komentarz 4 czerwca 2015 przez Pieniek Gaduła (3,330 p.)
Ale dziwnie :o
Na tamtej stronie ten sposób naprawdę działa ale po wrzuceniu na serwer wynik kompilacji jest już inny: http://nomat.nazwa.pl/javascript/ (przynajmniej na google chrome, chrome i mozilli firefox) (kod na http://nomat.nazwa.pl/javascript/main.js)
komentarz 4 czerwca 2015 przez Comandeer Guru (601,110 p.)

Eh, tam też nie działa. Umknął nam jeden szczegół, że tam objekt !== window.objekt, bo całość jest odpalona w window.onload

https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/delete → tu masz dokładnie przykłady co i jak można usunąć.

Inna rzecz, że w gruncie rzeczy zrobienie czegoś na wzór:

zmienna = undefined;

zadziała tak samo jak ten operator

komentarz 4 czerwca 2015 przez Pieniek Gaduła (3,330 p.)
ale to w js usunięcie wszystkich referencji do objektu automatycznie kasuje ten objekt?
komentarz 4 czerwca 2015 przez Comandeer Guru (601,110 p.)
Nie, ale przeznacza go do usunięcia przez garbage collectora
komentarz 4 czerwca 2015 przez Pieniek Gaduła (3,330 p.)
Haha rany jak dziwnie :D Gdy po prostu usuwam referencje mam wrażenie że zaraz gdzieś za rogu wyskoczy mój były ćwiczeniowiec i przypieprzy mi klawiaturą.

 

Dzięki wielkie za pomoc dał bym Ci milion plusów jak by się dało <3!

Podobne pytania

0 głosów
2 odpowiedzi 252 wizyt
pytanie zadane 9 lutego 2019 w C i C++ przez jankustosz1 Nałogowiec (35,880 p.)
0 głosów
1 odpowiedź 155 wizyt
pytanie zadane 9 grudnia 2015 w C i C++ przez PoProstuTomasz Początkujący (470 p.)
0 głosów
1 odpowiedź 671 wizyt
pytanie zadane 4 października 2020 w C i C++ przez sebaaas Początkujący (350 p.)

92,570 zapytań

141,422 odpowiedzi

319,643 komentarzy

61,958 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Kolejna edycja największej imprezy hakerskiej w Polsce, czyli Mega Sekurak Hacking Party odbędzie się już 20 maja 2024r. Z tej okazji mamy dla Was kod: pasjamshp - jeżeli wpiszecie go w koszyku, to wówczas otrzymacie 40% zniżki na bilet w wersji standard!

Więcej informacji na temat imprezy znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...