How to use WeakMap and WeakSet in JavaScript

แชร์
ฝัง
  • เผยแพร่เมื่อ 17 เม.ย. 2024
  • My Links
    shaky.sh
    shaky.sh/tools
    / andrew8088
    mastodon.social/@andrew8088
    #programming #coding #typescript #javascript #frontenddeveloper #backenddeveloper #softwareengineer #softwareengineering #softwaredevelopment #weakmap #weakset #expressjs
  • วิทยาศาสตร์และเทคโนโลยี

ความคิดเห็น • 11

  • @florianbopp187
    @florianbopp187 3 หลายเดือนก่อน +9

    Another place where a weakmap is useful is for diy reactivity using proxies. You can use it to store reactivity dependencies and they will be garbage collected when the dependencies are. See vue‘s reactivity system for more info.

    • @studiowebselect
      @studiowebselect 3 หลายเดือนก่อน +1

      i was about to point exactly the same reference from vue reactivity

  • @hugodsa89
    @hugodsa89 3 หลายเดือนก่อน +7

    Missed your videos

  • @ivan.romaniv
    @ivan.romaniv 3 หลายเดือนก่อน

    that's really nice example! thank you!

  • @xelspeth
    @xelspeth 3 หลายเดือนก่อน

    Great video didn't even know this was a thing!
    What do you use to get curly if's and else's? Or is that just manual nvim config?

    • @andrew-burgess
      @andrew-burgess  3 หลายเดือนก่อน

      That's the font I use, mono lisa

  • @Ali-sc6dh
    @Ali-sc6dh 3 หลายเดือนก่อน

    I used weekmap a lot for analytics data tracking. In case you want to build a tracking tool that is independant from the website source code, you can use weakmap to track for exemple unique impressions of elements (when they are visible on screen). This way you don't hold references to HTML elements that have been removed from the DOM and prevent them from being garbage collected

  • @hugodsa89
    @hugodsa89 3 หลายเดือนก่อน +2

    Audio is top. Maybe don’t lean back 🤣

  • @schizomaru
    @schizomaru 2 หลายเดือนก่อน

    line 33: await setTimeout...?
    i dont think setTimeout returns a promise
    you could create:
    function delay(time){return new Promise((done)=>{setTimeout(done, time || 0});}
    await delay(1000 * Math.random());

    • @EccentricEngineerMN
      @EccentricEngineerMN 2 หลายเดือนก่อน

      In this video he is using nodejs timers/promises which is a promisified version ofr the global setTimeout