---
title: "Angular 9, a new decimal datatype for JS, and how to read specs"
publication: "JavaScript Weekly"
issue: 474
published_at: "2020-02-07"
canonical_url: "https://javascriptweekly.com/issues/474"
---

And more JavaScript links, tutorials, and projects of the week.       

#474 — February 7, 2020 

[Unsubscribe](https://javascriptweekly.com/leave/*|UID|*):[Read on the Web](https://javascriptweekly.com/issues/474)   

JavaScript Weekly 

[![\](https://res.cloudinary.com/cpress/image/upload/w_1280,e_sharpen:60/v1581096039/ggb6zxapns5jwcheaufw.png)](https://v8.dev/blog/understanding-ecmascript-part-1)  

[Understanding the ECMAScript Spec](https://v8.dev/blog/understanding-ecmascript-part-1) — The meaty first post in a series looking at how to read parts of [the formal ECMAScript spec](https://tc39.es/ecma262/) that forms the basis for JavaScript and turns its formal notation into something you can learn from. 

Marja Hölttä   

[Angular 9 Released: Project Ivy Has Arrived](https://blog.angular.io/version-9-of-angular-now-available-project-ivy-has-arrived-23c97b63cfa3) — A major release for Angular that includes an all new compilation and rendering pipeline (called Ivy) as well as updates across the entire framework including the CLI tools and Angular Material. _“This is one of the biggest updates to Angular we’ve made in the past 3 years.”_ 

Stephen Fluin   [![\](https://copm.s3.amazonaws.com/214538c0.png)](https://www.datadoghq.com/dg/apm/synthetics/ts-synthetic-monitoring/?utm_source=Advertisement&utm_medium=CooperPress&utm_campaign=CooperPress-JavascriptWeeklyP) 

[Locate Front-End Issues Like JavaScript or Network Errors Instantly](https://www.datadoghq.com/dg/apm/synthetics/ts-synthetic-monitoring/?utm_source=Advertisement&utm_medium=CooperPress&utm_campaign=CooperPress-JavascriptWeeklyP) — Get proactively alerted on any client-side issues such as JavaScript and network errors, optimize the load time of your front-end resources, and detect any UI issues that affect critical user journeys. Try it free with Datadog Synthetics. 

Datadog sponsor    

[Electron 8.0.0 Released](https://www.electronjs.org/blog/electron-8-0) — The popular cross-platform desktop app development toolkit takes more steps forward, mostly in the area of dependencies, by moving to Chrome 80 (which only came out this week itself), V8 8.0, and Node 12.13. IPC communication now uses a new algorithm which is a lot faster for large and complex objects too. [Offscreen rendering](https://www.electronjs.org/docs/tutorial/offscreen-rendering) is currently _disabled_, however, so don’t upgrade if you depend on it. 

Electron Project  

![](https://res.cloudinary.com/cpress/image/upload/w_1280,e_sharpen:60/v1581097148/aa78qfcqwium6tpuapx4.png)  

[A Proposal for a Built-In Decimal Datatype](https://github.com/littledan/proposal-decimal) — An investigation into adding a built-in data type in JavaScript to represent base-10 decimal numbers that’s being presented to TC39. BTW, you may find [this slidedeck](https://docs.google.com/presentation/d/1qceGOynkiypIgvv0Ju8uPqXP4GsWHoY2IVYSWE8SA4Y/edit#slide=id.p) to be more accessible. 

Daniel Ehrenberg     

**Quick bytes:** 

- Chrome 80 is out which brings support for [ES modules in Web Workers.](https://web.dev/module-workers/#enter-module-workers)
- [TypeScript 3.8 RC](https://devblogs.microsoft.com/typescript/announcing-typescript-3-8-rc/) is out. No changes anticipated before the final release.
- There's a proposal for combining [logical operators and assignment expressions.](https://github.com/tc39/proposal-logical-assignment)
- Work on Babel 8 is [underway.](https://twitter.com/NicoloRibaudo/status/1224995465902600192) There will be breaking changes but there's [an outline and plan.](https://github.com/babel/babel/issues/10746)   

💻 Jobs  

[Announcing a 100% Remote Opportunity as a Sr. Fullstack Dev (Node/React)](https://www.clevertech.biz/careers/javascript-full-stack-engineer) — We’re passionate about giving developers the chance to do meaningful work by building transformational technology solutions. 

Clevertech   

[JavaScript Developer at X-Team (Remote)](https://x-team.com/remote-javascript-developer-jobs/?utm_source=cooperpress&utm_medium=email-ad&utm_campaign=js) — Work with the world's leading brands, from anywhere. Travel the world while being part of the most energizing community of developers. 

X-Team   

[Find a Dev Job Through Vettery](https://www.vettery.com/tech?utm_source=newsletter&utm_medium=cooper-javascriptweekly&utm_term=tech&utm_content=grouped&utm_campaign=ad-77584) — Vettery is completely free for job seekers. Make a profile, name your salary, and connect with hiring managers from top employers. 

Vettery  

📘 Articles & Tutorials  

[Getting Acquainted With Svelte, the New Framework on the Block](https://css-tricks.com/getting-acquainted-with-svelte-the-new-framework-on-the-block/) — We’ve mentioned [Svelte](https://svelte.dev/), an interesting _compile-time_ 'framework', a few times in the last year – here’s another take on why to consider it. 

Tristram Tolliday   

[Formatting Dates with `Intl.DateTimeFormat`](https://www.valentinog.com/blog/datetime/) — A good demonstration of a modern way to format dates in a region friendly way using native APIs, as now supported in both Node and all major browsers. 

Valentino Gagliardi   

[Top GitHub Best Practices for Developers - Expanded Guide](https://try.datree.io/github-best-practices-guide?utm_source=cooperpress&utm_medium=jsweekly) — Implementing these best practices could save you time, improve code maintainability, and prevent security risks. 

Datree.io sponsor   

[Adding a F#-Style Pipeline Operator to Your JavaScript with Babel](http://codereform.com/blog/post/babel-fsharp-pipeline-operator/) — Using Babel’s custom transpilation powers to try out an alternative to the proposed pipeline operator. 

George Dyrrachitis   

[Building an Accessible Autocomplete Control](https://adamsilver.io/articles/building-an-accessible-autocomplete-control/) — Learn how to design and build an accessible autocomplete control from scratch. 

Adam Silver   

[You (Possibly) Don't Need Moment.js](https://github.com/you-dont-need/You-Dont-Need-Momentjs) — [Moment.js](https://momentjs.com/) is a popular date and time manipulation library but this repo shows off alternative approaches, including many native functions that do similar things. At the very least, this is a neat ‘cheat sheet’ for date and time manipulation :-) 

Various Contributors   

[Implementing Basic 2D Physics in JavaScript](https://martinheinz.dev/blog/15) — If you’ve ever seen a physics simulation on the Web and wondered about the basic math to pull it off, this will get you started. 

Martin Heinz   

▶[Building a Vue 3 Testing Framework from Scratch](https://vimeo.com/388980496) — This is _not_ a guide to Vue testing but a look behind what’s necessary to implement your own testing framework for a framework like Vue. 

Lachlan   

[How to Use Cloudflare JavaScript Workers to Deploy a Statically Generated Site](https://t.co/ZZzMq37xUA) 

Ernesto Freyre   

[Debug JS Errors in Real-Time and Optimize Your Front-End Performance](https://www.site24x7.com/real-user-monitoring.html?utm_source=JS%20Weekly&utm_medium=email&utm_campaign=feb-newsletter&ad_src=jsweekly) 

Site24x7 sponsor   

[How To Create A Headless WordPress Site On The JAMstack](https://www.smashingmagazine.com/2020/02/headless-wordpress-site-jamstack/) 

Sarah Drasner & Geoff Graham   

[3 Ways To Access Object Properties in JavaScript](https://dmitripavlutin.com/access-object-properties-javascript/) 

Dmitri Pavlutin   

[10 Array Methods You Should Know](https://dev.to/rebeccauranga/10-array-methods-you-should-know-nn5) — One for the beginners among you :-) 

Rebecca Uranga  

🔧 Code & Tools  

[CheerpJ 2.0 Released: A Java to WASM and JS Compiler](https://medium.com/leaningtech/cheerpj-2-0-released-381f6d03e4e) — This is a commercial tool (though free for non-commercial purposes) but as someone who started on the Web in the 90s, the idea of Java being compiled _to JavaScript_ continues to tickle me :-) Interesting tech. 

Stefano De Rossi   

[vue-cli v4.2 Released](https://github.com/vuejs/vue-cli/releases/tag/v4.2.0) — The latest release of the popular tools is fully baked with ESLint 6, optional chaining and nullish coalescing support, plus better Yarn 2 support if you’re using that. 

Haoqun Jiang   

[Sharect: A Library to Let Users Share Text Selections to Social Networks](https://estevanmaito.github.io/sharect/) — If you’ve seen how Medium lets readers select text and share it, it’s like that, but lighter. 

Estevan Maito   

[New Time-Travel Debugger for JavaScript and TypeScript](https://wallabyjs.com/docs/intro/time-travel-debugger.html?utm_source=javascript&utm_medium=javascript&utm_campaign=javascript&utm_content=javascript) — Move forward and backwards through your code to understand the conditions that led to a specific bug, view runtime values, edit-and-continue, and more. 

Wallaby.js sponsor   

[GLTFJSX 1.0: Turns GLTFs Into JSX Components](https://github.com/react-spring/gltfjsx/blob/master/whatsnew.md) — Turns GLTF (GL Transmission Format) files (as used for 3D models and scenes) into re-usable [Three.js](https://threejs.org/) components. 

Paul Henschel   

[Baretest: An 'Extremely Minimalistic' Alternative to Jest](https://volument.com/baretest) — A fast and simple JavaScript test runner that boasts a ‘brainless’ API. The motivation? Runniing tests as fast as possible. 

volument   

[Vendure: A Headless GraphQL E-commerce Framework](https://github.com/vendure-ecommerce/vendure) — Built on Node, Nest and TypeScript. The idea is you’d use this for the _backend_, then implement the front-end of your store however you prefer. 

Vendure   

[defu: Recursively Assign Default Properties](https://github.com/jsless/defu) — In short, merge two objects together without the properties overwriting each other, as you might want to do when handling options and default settings on entry to a function. 

JSLess   

[x-spreadsheet: A JS and Canvas-Powered Spreadsheet Control](https://github.com/myliang/x-spreadsheet) 

myliang         

RIP [Ben Neumann](https://twitter.com/peterc/status/1225732548514451458) 1966–2020  

Published by [Cooperpress](https://cooperpress.com/) and edited by [Peter Cooper](https://twitter.com/peterc) 

'JavaScript' is a trademark of Oracle Corporation in the US
We are not endorsed by or affiliated with Oracle. 

[Change your email address](https://javascriptweekly.com/edit_subscription/*|UID|*) or [stop getting this newsletter](https://javascriptweekly.com/leave/*|UID|*). 

© Cooper Press Ltd · Fairfield Enterprise Centre, Louth, LN11 0LS, United Kingdom
