A Tasty Treats Podcast for Web Developers.

Ask a Potluck Question →
Wes Bos

Wes Bos

Full Stack JavaScript Developer. Creator of really good web development courses. BBQ enthusiast.

Scott Tolinski

Scott Tolinski

Web Developer, Creator of Level Up Tuts, Bboy, Robotops Crew and Youtuber

Playing: 287: Hasty Treat - Records and Tuples in JavaScript

0:00

LOUDNESS

Sep 28th, 2020

Hasty Treat - Records and Tuples in JavaScript

👇 Download Show✏️ Edit Show Notes

In this Hasty Treat, Scott and Wes talk about records and tuples in javascript — what they are, why you might want to use them, and more!

LogRocket - Sponsor

LogRocket lets you replay what users do on your site, helping you reproduce bugs and fix issues faster. It's an exception tracker, a session re-player and a performance monitor. Get 14 days free at logrocket.com/syntax.

Show Notes

02:42 - Immutability

05:08 - Records

  • Immutable object
  • Syntax #{x: 1, y: 2}

05:56 - Tuples

  • Immutable array
  • Syntax #[1,2,3,4]

07:18 - For both

  • Referred to as a compound primitive
  • Can contain only primitives, not objects
  • They are compared deeply by their contents rather than their identity

      assert(#{ a: 1 } === #{ a: 1 });
      assert(#[1, 2] === #[1, 2]);
      assert(#{ a: 1, b: 2 } === #{ b: 2, a: 1 });
    
  • Potential for optimizations

    • Optimizations for making deep equality checks fast
    • Optimizations for manipulating data structures
  • Works well with type systems
  • Better integration with the debugger
  • Accessed through normal record.scott object like syntax

13:39 - Stage 2

Tweet us your tasty treats!