Listen

Description

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
Links https://github.com/tc39/proposal-record-tuple

Tweet us your tasty treats! Scott’s Instagram

LevelUpTutorials Instagram

Wes’ Instagram

Wes’ Twitter

Wes’ Facebook

Scott’s Twitter

Make sure to include @SyntaxFM in your tweets