Aktywne Wpisy
Zawiera treści 18+
Ta treść została oznaczona jako materiał kontrowersyjny lub dla dorosłych.
dplus2 +463
Pan wielki przedsiębiorca chyba właśnie sobie sprezentował efekt odwrotny od zamierzonego. Na Linkedin peany pochwalne wobec mbanku
#mbank
#mbank
![dplus2 - Pan wielki przedsiębiorca chyba właśnie sobie sprezentował efekt odwrotny od...](https://wykop.pl/cdn/c3201142/0438ae4a12c76bd8cdf1b1b9d34fdb35c7eeed7e1e9ff9a05a9f70002185dbd7,w150.jpg?author=dplus2&auth=54bf72e3e8924cf22268777700ee9842)
źródło: 1719475031483
Pobierz
Nie rozumiem tego przykładu. Przecież odniesienie do value nadal tam jest
#javascript
value.length
, które to jest odniesieniem do prymitywu (w tym wypadku typu number). Odniesienia do prymitywów są w pamięci kopiowane. Więcvalue.length
zostało skopiowane do nowego miejsca w pamięci, a navalue
już nic bezpośrednio nie wskazuje, więc garbage collector może to wyrzucićhttps://pastebin.com/eYArfjVc
value.length jest w obu przypadkach tylko w jednym jest zwracane z funkcji w drugim przypisane do zmiennej. Ale i w pierwszym i w drugim jest value.length
value
żeby móc odwołać się dovalue.length
.W drugim przypadku do
value
odwołujesz się tylko raz (gdy pobierasz wartość), jest to number więc zostaje skopiowany w inne miejsce w pamięci i od tamtej pory odwołujesz się tylko do tego numbera, nie masz już żadnych odwołań bezpośrednio dovalue