# JavaScript Tips of the Day

**URL:** https://forum.kirupa.com/t/javascript-tips-of-the-day/641803
**Category:** web dev
**Created:** [February 14, 2020, 10:08pm UTC](https://forum.kirupa.com/t/javascript-tips-of-the-day/641803 "2020-02-14T22:08:43Z")
**Posts on this page:** 20
**Page:** 1

<div class="post-metadata">

### Author: ![senocular](https://yyz1.discourse-cdn.com/flex011/user_avatar/forum.kirupa.com/senocular/32/7217_2.png) [@senocular](https://forum.kirupa.com/u/senocular)
#### Post date: [February 14, 2020, 10:08pm UTC](https://forum.kirupa.com/t/javascript-tips-of-the-day/641803/1 "2020-02-14T22:08:43Z")

</div>

> [@](#):
>
> ℹ **Update (July 22)**: The [ES2021 Preview](http://forum.kirupa.com/t/js-tip-of-the-day-es2021-preview/643632) tip marks the last of this series. I hope you’ve enjoyed them as much as I’ve enjoyed writing them!
> 
> > **Previous Updates**
> >
> > ℹ **Update (June 4)**: Each tip has now been moved to its own topic to make it easier to link to and track. This topic will continue act as an index to all of the tips including new ones as they’re added.  
> > ℹ **Update (May 23)**: We’ve reached **100 tips**! While there are still some more tips to come, they will not be released daily. Also, the format will change slightly where each tip will be its own topic rather than a comment in this topic.  
> > ℹ **Update (Apr. 14)**: The title of the thread will now reflect the latest tip.  
> > ℹ **Update (Apr. 7)**: List now organized by category with the latest 5 tips being listed at the top.  
> > ℹ **Initial Commit (Feb. 14)**: Happy Valentines Day! To celebrate, I’m reviving one of the most popular kirupa forum posts of all time, [ActionScript 3 Tip of the Day](http://forum.kirupa.com/t/actionscript-3-tip-of-the-day/191364) ([archive for better formatting](https://web.archive.org/web/20081227143921/http://www.kirupa.com/forum/showthread.php?t=223798)), with a new focus on **JavaScript**!

Here, you’ll find tips posted daily relating to JavaScript: its features, how its used, and anything else related to the language and developing with it.

## Tips

### Latest

1. [ES2021 Preview](http://forum.kirupa.com/t/js-tip-of-the-day-es2021-preview/643632)
2. [Async Generators](http://forum.kirupa.com/t/js-tip-of-the-day-async-generators/643582)
3. [The Long Arrow Operator](http://forum.kirupa.com/t/js-tip-of-the-day-the-long-arrow-operator/643554)
4. [Default Parameter Scope](http://forum.kirupa.com/t/js-tip-of-the-day-default-parameter-scope/643536)
5. [Undefined vs. Null vs. Nullish](http://forum.kirupa.com/t/js-tip-of-the-day-null-vs-undefined-vs-nullish/643521)

### Language Features

- [Optional Chaining](http://forum.kirupa.com/t/js-tip-of-the-day-optional-chaining/643182)
- [Nullish Coalescing Operator](http://forum.kirupa.com/t/js-tip-of-the-day-nullish-coalescing-operator/643181)
- [Default Function Parameters](http://forum.kirupa.com/t/js-tip-of-the-day-default-function-parameters/643178)
- [Reduce Code with Destructuring](http://forum.kirupa.com/t/js-tip-of-the-day-reduce-code-with-destructuring/643176)
- [Variables in Strings with Template Literals](http://forum.kirupa.com/t/js-tip-of-the-day-variables-in-strings-with-template-literals/643174)
- [Symbols for Safe Property Names](http://forum.kirupa.com/t/js-tip-of-the-day-symbols-for-safe-property-names/643172)
- [Reduce Code with Object Shorthand Syntax](http://forum.kirupa.com/t/js-tip-of-the-day-reduce-code-with-object-shorthand-syntax/643170)
- [Declarations let, const and class Can’t be Redeclared](http://forum.kirupa.com/t/js-tip-of-the-day-declarations-let-const-and-class-can-t-be-redeclared/643169)
- [typeof null === “object”](http://forum.kirupa.com/t/js-tip-of-the-day-typeof-null-object/643167)
- [Symbol.toStringTag](http://forum.kirupa.com/t/js-tip-of-the-day-symbol-tostringtag/643164)
- [Spreading Values](http://forum.kirupa.com/t/js-tip-of-the-day-spreading-values/643161)
- [Numeric Literal Formats](http://forum.kirupa.com/t/js-tip-of-the-day-numeric-literal-formats/643150)
- [Async Functions and await](http://forum.kirupa.com/t/js-tip-of-the-day-async-functions-and-await/643147)
- [with Statements](http://forum.kirupa.com/t/js-tip-of-the-day-with-statements/643144)
- [Accessor Properties (Getter/Setter)](http://forum.kirupa.com/t/js-tip-of-the-day-accessor-properties-getter-setter/643141)
- [super in Object Literals](http://forum.kirupa.com/t/js-tip-of-the-day-super-in-object-literals/643138)
- [Property Descriptors](http://forum.kirupa.com/t/js-tip-of-the-day-property-descriptors/643137)
- [Default Parameters with Destructuring](http://forum.kirupa.com/t/js-tip-of-the-day-default-parameters-with-destructuring/643134)
- [Symbol.species](http://forum.kirupa.com/t/js-tip-of-the-day-symbol-species/643121)
- [Proxy Objects](http://forum.kirupa.com/t/js-tip-of-the-day-detecting-dark-mode/6431790)
- [Flattening Arrays](http://forum.kirupa.com/t/js-tip-of-the-day-flattening-arrays/643113)
- [globalThis](http://forum.kirupa.com/t/js-tip-of-the-day-globalthis/643111)
- [Computed Properties](http://forum.kirupa.com/t/js-tip-of-the-day-computed-properties/643108)
- [Symbol.hasInstance](http://forum.kirupa.com/t/js-tip-of-the-day-symbol-hasinstance/643102)
- [Preventing Extensions in Objects](http://forum.kirupa.com/t/js-tip-of-the-day-preventing-extensions-in-objects/643101)
- [What is a NaN?](http://forum.kirupa.com/t/js-tip-of-the-day-thenable-objects/6431770)
- [\_\_proto\_\_ in Object Literals](http://forum.kirupa.com/t/js-tip-of-the-day-proto-in-object-literals/643098)
- [Sealing Objects](http://forum.kirupa.com/t/js-tip-of-the-day-sealing-objects/643096)
- [Negative Zero](http://forum.kirupa.com/t/js-tip-of-the-day-negative-zero/643094)
- [Freezing Objects](http://forum.kirupa.com/t/js-tip-of-the-day-freezing-objects/643092)
- [Object Serialization With JSON](http://forum.kirupa.com/t/js-tip-of-the-day-object-serialization-with-json/643080)
- [Labels](http://forum.kirupa.com/t/js-tip-of-the-day-labels/643075)
- [Custom Serialization With toJSON](http://forum.kirupa.com/t/js-tip-of-the-day-custom-serialization-with-tojson/643071)
- [Trailing Commas](http://forum.kirupa.com/t/js-tip-of-the-day-trailing-commas/643200)
- [JSON Reviver Function](http://forum.kirupa.com/t/js-tip-of-the-day-json-reviver-function/643241)
- [Function Name Bindings](http://forum.kirupa.com/t/js-tip-of-the-day-function-name-bindings/643299)
- [ES2021 Preview](http://forum.kirupa.com/t/js-tip-of-the-day-es2021-preview/643632)

### Web API

- [Detecting Dark Mode](http://forum.kirupa.com/t/js-tip-of-the-day-detecting-dark-mode/643179)
- [Event Attributes also Define Callback Functions](http://forum.kirupa.com/t/js-tip-of-the-day-event-attributes-also-define-callback-functions/643173)
- [addEventListener Options](http://forum.kirupa.com/t/js-tip-of-the-day-addeventlistener-options/643163)
- [fetch is the new XMLHttpRequest](http://forum.kirupa.com/t/js-tip-of-the-day-fetch-is-the-new-xmlhttprequest/643156)
- [setTimeout Callback Arguments](http://forum.kirupa.com/t/js-tip-of-the-day-settimeout-callback-arguments/643151)
- [Scrolling an Element into View](http://forum.kirupa.com/t/js-tip-of-the-day-scrolling-an-element-into-view/643149)
- [Event Attribute Scopes](http://forum.kirupa.com/t/js-tip-of-the-day-attribute-event-scopes/643139)
- [Finding Elements in the DOM](http://forum.kirupa.com/t/js-tip-of-the-day-finding-elements-in-the-dom/643136)
- [Live DOM Lists](http://forum.kirupa.com/t/js-tip-of-the-day-live-dom-lists/643132)
- [Easily Toggle HTML Classes](http://forum.kirupa.com/t/js-tip-of-the-day-easily-toggle-html-classes/643128)
- [Setting HTML Element Styles](http://forum.kirupa.com/t/js-tip-of-the-day-setting-html-element-styles/643124)
- [Entering Fullscreen](http://forum.kirupa.com/t/js-tip-of-the-day-entering-fullscreen/643119)
- [The Window Proxy](http://forum.kirupa.com/t/js-tip-of-the-day-the-window-proxy/643114)
- [HTML ids Are Global](http://forum.kirupa.com/t/js-tip-of-the-day-html-ids-are-global/643105)
- [Animations With requestAnimationFrame](http://forum.kirupa.com/t/js-tip-of-the-day-animations-with-requestanimationframe/643100)
- [MutationObserver](http://forum.kirupa.com/t/js-tip-of-the-day-mutationobserver/643095)
- [Canvas for Bitmaps](http://forum.kirupa.com/t/js-tip-of-the-day-canvas-for-bitmaps/643077)

### Classes/Constructors

- [Overriding Constructor Returns](http://forum.kirupa.com/t/js-tip-of-the-day-overriding-constructor-returns/643166)
- [super() Defines this](http://forum.kirupa.com/t/js-tip-of-the-day-super-defines-this/643157)
- [New Functions With new](http://forum.kirupa.com/t/js-tip-of-the-day-new-functions-with-new/643143)
- [Not All Functions Are Constructors](http://forum.kirupa.com/t/js-tip-of-the-day-not-all-functions-are-constructors/643140)
- [Constructors Don’t Need Parens](http://forum.kirupa.com/t/js-tip-of-the-day-constructors-don-t-need-parens/643131)
- [The Deal With Prototypes](http://forum.kirupa.com/t/js-tip-of-the-day-the-deal-with-prototypes/643123)
- [Static Members Are Inherited](http://forum.kirupa.com/t/js-tip-of-the-day-static-members-are-inherited/643120)
- [When the constructor Property Matters](http://forum.kirupa.com/t/js-tip-of-the-day-when-the-constructor-property-matters/643115)
- [Constructor Internals](http://forum.kirupa.com/t/js-tip-of-the-day-constructor-internals/643090)
- [A Function’s Home Object](http://forum.kirupa.com/t/js-tip-of-the-day-a-functions-home-object/643187)
- [Mixing class and function Constructors](http://forum.kirupa.com/t/js-tip-of-the-day-mixing-class-and-function-constructors/643264)

### Generators and Iterators

- [Generators for Iterables](http://forum.kirupa.com/t/js-tip-of-the-day-generators-for-iterables/643160)
- [Create Iterable Objects](http://forum.kirupa.com/t/js-tip-of-the-day-create-iterable-objects/643154)
- [Generating Ranges](http://forum.kirupa.com/t/js-tip-of-the-day-generating-ranges/643148)
- [The Iterator Protocol](http://forum.kirupa.com/t/js-tip-of-the-day-the-iterator-protocol/643129)
- [Interacting With Generators](http://forum.kirupa.com/t/js-tip-of-the-day-interacting-with-generators/643126)
- [Yield Many With yield\*](http://forum.kirupa.com/t/js-tip-of-the-day-yield-many-with-yield/643117)
- [Generator Prototypes](http://forum.kirupa.com/t/js-tip-of-the-day-generator-prototypes/643106)
- [Using Generators to Animate](http://forum.kirupa.com/t/js-tip-of-the-day-using-generators-to-animate/643058)
- [Object.keys vs Array.keys](http://forum.kirupa.com/t/js-tip-of-the-day-object-keys-vs-array-keys/643508)
- [Async Generators](http://forum.kirupa.com/t/js-tip-of-the-day-async-generators/643582)

### How Tos

- [Is it an Array?](http://forum.kirupa.com/t/js-tip-of-the-day-is-it-an-array/643155)
- [Format Time Strings with Padding](http://forum.kirupa.com/t/js-tip-of-the-day-format-time-strings-with-padding/643145)
- [Chaining](http://forum.kirupa.com/t/js-tip-of-the-day-chaining/643135)
- [Using Destructuring to Swap Values](http://forum.kirupa.com/t/js-tip-of-the-day-using-destructuring-to-swap-values/643127)
- [A Custom Self-rejecting Promise](http://forum.kirupa.com/t/js-tip-of-the-day-a-custom-self-rejecting-promise/643112)
- [Filter and Map With flatMap](http://forum.kirupa.com/t/js-tip-of-the-day-filter-and-map-with-flatmap/643109)
- [Mixins](http://forum.kirupa.com/t/js-tip-of-the-day-mixins/643104)
- [Time-based requestAnimationFrame](http://forum.kirupa.com/t/js-tip-of-the-day-time-based-requestanimationframe/643091)
- [Copying Accessor Properties](http://forum.kirupa.com/t/js-tip-of-the-day-copying-accessor-properties/642997)

### Miscellaneous

- [Thenable Objects](http://forum.kirupa.com/t/js-tip-of-the-day/641803/10)
- [Internal Slots](http://forum.kirupa.com/t/js-tip-of-the-day-internal-slots/643171)
- [Missing Semicolon ASI Gotchas](http://forum.kirupa.com/t/js-tip-of-the-day-missing-semicolon-asi-gotchas/643168)
- [Hoisting](http://forum.kirupa.com/t/js-tip-of-the-day-hoisting/643162)
- [The Return of ASI](http://forum.kirupa.com/t/js-tip-of-the-day-the-return-of-asi/643158)
- [Exotic Objects](http://forum.kirupa.com/t/js-tip-of-the-day-exotic-objects/643152)
- [Array-likes](http://forum.kirupa.com/t/js-tip-of-the-day-array-likes/643142)
- [Define vs. Assign](http://forum.kirupa.com/t/js-tip-of-the-day-define-vs-assign/643133)
- [What Uses enumerable?](http://forum.kirupa.com/t/js-tip-of-the-day-what-uses-enumerable/643130)
- [Variable Shadowing](http://forum.kirupa.com/t/js-tip-of-the-day-variable-shadowing/643116)
- [Awaiting Non-promises](http://forum.kirupa.com/t/js-tip-of-the-day-awaiting-non-promises/643110)
- [Global Object vs. Global Declarations](http://forum.kirupa.com/t/js-tip-of-the-day-global-object-vs-global-declarations/643107)
- [Promises Block Rendering](http://forum.kirupa.com/t/js-tip-of-the-day-promises-block-rendering/643097)
- [Parameters are Reference Variables](http://forum.kirupa.com/t/js-tip-of-the-day-parameters-are-reference-variables/643093)
- [Kinds of Comparisons](http://forum.kirupa.com/t/js-tip-of-the-day-kinds-of-comparisons/643079)
- [The Underscore Convention](http://forum.kirupa.com/t/js-tip-of-the-day-the-underscore-convention/643076)
- [String Conversions in Depth](http://forum.kirupa.com/t/js-tip-of-the-day-string-conversions-in-depth/643047)
- [Closure Scopes Limit Closure Variables](http://forum.kirupa.com/t/js-tip-of-the-day-closure-scopes-limit-closure-variables/643340)
- [Prototypes as Instance of Type](http://forum.kirupa.com/t/js-tip-of-the-day-prototypes-as-instance-of-type/643352)
- [Undefined vs. Null vs. Nullish](http://forum.kirupa.com/t/js-tip-of-the-day-null-vs-undefined-vs-nullish/643521)
- [Default Parameter Scope](http://forum.kirupa.com/t/js-tip-of-the-day-default-parameter-scope/643536)
- [The Long Arrow Operator](http://forum.kirupa.com/t/js-tip-of-the-day-the-long-arrow-operator/643554)

### Tooling

- [JavaScript with Types: TypeScript](http://forum.kirupa.com/t/js-tip-of-the-day-javascript-with-types-typescript/643165)
- [JavaScript Outside the Browser: Node](http://forum.kirupa.com/t/js-tip-of-the-day-javascript-outside-the-browser-node/643159)
- [Expandable Logs With console.dir](http://forum.kirupa.com/t/js-tip-of-the-day-expandable-logs-with-console-dir/643146)
- [Detect Errors Early With Linting](http://forum.kirupa.com/t/js-tip-of-the-day-detect-errors-early-with-linting/643125)
- [Stylish Logs](http://forum.kirupa.com/t/js-tip-of-the-day-stylish-logs/643122)
- [JSFuck](http://forum.kirupa.com/t/js-tip-of-the-day-jsfuck/643103)
- [Console $ Utilities](http://forum.kirupa.com/t/js-tip-of-the-day-console-utilities/643078)
- [The debugger Statement](http://forum.kirupa.com/t/js-tip-of-the-day-the-debugger-statement/643281)

### Reference

- [The Official JavaScript Reference: MDN](http://forum.kirupa.com/t/js-tip-of-the-day-the-official-javascript-reference-mdn/643180)
- [JavaScript (ECMAScript) Versioning](http://forum.kirupa.com/t/js-tip-of-the-day-javascript-ecmascript-versioning/643175)
- [ECMAScript New Feature Proposals](http://forum.kirupa.com/t/js-tip-of-the-day-ecmascript-new-feature-proposals/643153)

---

<div class="post-metadata">

### Author: ![senocular](https://yyz1.discourse-cdn.com/flex011/user_avatar/forum.kirupa.com/senocular/32/7217_2.png) [@senocular](https://forum.kirupa.com/u/senocular)
#### Post date: [June 5, 2020, 1:26am UTC](https://forum.kirupa.com/t/javascript-tips-of-the-day/641803/2 "2020-06-05T01:26:26Z")

</div>

A post was split to a new topic: [JS Tip of the Day: Optional Chaining](https://forum.kirupa.com/t/js-tip-of-the-day-optional-chaining/643182)

---

<div class="post-metadata">

### Author: ![senocular](https://yyz1.discourse-cdn.com/flex011/user_avatar/forum.kirupa.com/senocular/32/7217_2.png) [@senocular](https://forum.kirupa.com/u/senocular)
#### Post date: [June 5, 2020, 1:26am UTC](https://forum.kirupa.com/t/javascript-tips-of-the-day/641803/3 "2020-06-05T01:26:03Z")

</div>

A post was split to a new topic: [JS Tip of the Day: Nullish Coalescing Operator](https://forum.kirupa.com/t/js-tip-of-the-day-nullish-coalescing-operator/643181)

---

<div class="post-metadata">

### Author: ![senocular](https://yyz1.discourse-cdn.com/flex011/user_avatar/forum.kirupa.com/senocular/32/7217_2.png) [@senocular](https://forum.kirupa.com/u/senocular)
#### Post date: [June 5, 2020, 1:25am UTC](https://forum.kirupa.com/t/javascript-tips-of-the-day/641803/4 "2020-06-05T01:25:38Z")

</div>

A post was split to a new topic: [JS Tip of the Day: The Official JavaScript Reference: MDN](https://forum.kirupa.com/t/js-tip-of-the-day-the-official-javascript-reference-mdn/643180)

---

<div class="post-metadata">

### Author: ![kirupa](https://yyz1.discourse-cdn.com/flex011/user_avatar/forum.kirupa.com/kirupa/32/11616_2.png) [@kirupa](https://forum.kirupa.com/u/kirupa)
#### Post date: [February 17, 2020, 6:39am UTC](https://forum.kirupa.com/t/javascript-tips-of-the-day/641803/7 "2020-02-17T06:39:37Z")

</div>



---

<div class="post-metadata">

### Author: ![senocular](https://yyz1.discourse-cdn.com/flex011/user_avatar/forum.kirupa.com/senocular/32/7217_2.png) [@senocular](https://forum.kirupa.com/u/senocular)
#### Post date: [June 5, 2020, 1:25am UTC](https://forum.kirupa.com/t/javascript-tips-of-the-day/641803/8 "2020-06-05T01:25:18Z")

</div>

A post was split to a new topic: [JS Tip of the Day: Detecting Dark Mode](https://forum.kirupa.com/t/js-tip-of-the-day-detecting-dark-mode/643179)

---

<div class="post-metadata">

### Author: ![senocular](https://yyz1.discourse-cdn.com/flex011/user_avatar/forum.kirupa.com/senocular/32/7217_2.png) [@senocular](https://forum.kirupa.com/u/senocular)
#### Post date: [June 5, 2020, 1:25am UTC](https://forum.kirupa.com/t/javascript-tips-of-the-day/641803/9 "2020-06-05T01:25:01Z")

</div>

A post was split to a new topic: [JS Tip of the Day: Default Function Parameters](https://forum.kirupa.com/t/js-tip-of-the-day-default-function-parameters/643178)

---

<div class="post-metadata">

### Author: ![senocular](https://yyz1.discourse-cdn.com/flex011/user_avatar/forum.kirupa.com/senocular/32/7217_2.png) [@senocular](https://forum.kirupa.com/u/senocular)
#### Post date: [June 5, 2020, 1:24am UTC](https://forum.kirupa.com/t/javascript-tips-of-the-day/641803/10 "2020-06-05T01:24:45Z")

</div>

A post was split to a new topic: [JS Tip of the Day: Thenable Objects](https://forum.kirupa.com/t/js-tip-of-the-day-thenable-objects/643177)

---

<div class="post-metadata">

### Author: ![senocular](https://yyz1.discourse-cdn.com/flex011/user_avatar/forum.kirupa.com/senocular/32/7217_2.png) [@senocular](https://forum.kirupa.com/u/senocular)
#### Post date: [June 5, 2020, 1:24am UTC](https://forum.kirupa.com/t/javascript-tips-of-the-day/641803/11 "2020-06-05T01:24:29Z")

</div>

A post was split to a new topic: [JS Tip of the Day: Reduce Code with Destructuring](https://forum.kirupa.com/t/js-tip-of-the-day-reduce-code-with-destructuring/643176)

---

<div class="post-metadata">

### Author: ![senocular](https://yyz1.discourse-cdn.com/flex011/user_avatar/forum.kirupa.com/senocular/32/7217_2.png) [@senocular](https://forum.kirupa.com/u/senocular)
#### Post date: [June 5, 2020, 1:24am UTC](https://forum.kirupa.com/t/javascript-tips-of-the-day/641803/12 "2020-06-05T01:24:11Z")

</div>

A post was split to a new topic: [JS Tip of the Day: JavaScript (ECMAScript) Versioning](https://forum.kirupa.com/t/js-tip-of-the-day-javascript-ecmascript-versioning/643175)

---

<div class="post-metadata">

### Author: ![kirupa](https://yyz1.discourse-cdn.com/flex011/user_avatar/forum.kirupa.com/kirupa/32/11616_2.png) [@kirupa](https://forum.kirupa.com/u/kirupa)
#### Post date: [February 22, 2020, 5:46am UTC](https://forum.kirupa.com/t/javascript-tips-of-the-day/641803/13 "2020-02-22T05:46:48Z")

</div>



---

<div class="post-metadata">

### Author: ![senocular](https://yyz1.discourse-cdn.com/flex011/user_avatar/forum.kirupa.com/senocular/32/7217_2.png) [@senocular](https://forum.kirupa.com/u/senocular)
#### Post date: [June 5, 2020, 1:23am UTC](https://forum.kirupa.com/t/javascript-tips-of-the-day/641803/14 "2020-06-05T01:23:55Z")

</div>

A post was split to a new topic: [JS Tip of the Day: Variables in Strings with Template Literals](https://forum.kirupa.com/t/js-tip-of-the-day-variables-in-strings-with-template-literals/643174)

---

<div class="post-metadata">

### Author: ![senocular](https://yyz1.discourse-cdn.com/flex011/user_avatar/forum.kirupa.com/senocular/32/7217_2.png) [@senocular](https://forum.kirupa.com/u/senocular)
#### Post date: [June 5, 2020, 1:23am UTC](https://forum.kirupa.com/t/javascript-tips-of-the-day/641803/15 "2020-06-05T01:23:39Z")

</div>

A post was split to a new topic: [JS Tip of the Day: Event Attributes also Define Callback Functions](https://forum.kirupa.com/t/js-tip-of-the-day-event-attributes-also-define-callback-functions/643173)

---

<div class="post-metadata">

### Author: ![senocular](https://yyz1.discourse-cdn.com/flex011/user_avatar/forum.kirupa.com/senocular/32/7217_2.png) [@senocular](https://forum.kirupa.com/u/senocular)
#### Post date: [June 5, 2020, 1:23am UTC](https://forum.kirupa.com/t/javascript-tips-of-the-day/641803/16 "2020-06-05T01:23:24Z")

</div>

A post was split to a new topic: [JS Tip of the Day: Symbols for Safe Property Names](https://forum.kirupa.com/t/js-tip-of-the-day-symbols-for-safe-property-names/643172)

---

<div class="post-metadata">

### Author: ![senocular](https://yyz1.discourse-cdn.com/flex011/user_avatar/forum.kirupa.com/senocular/32/7217_2.png) [@senocular](https://forum.kirupa.com/u/senocular)
#### Post date: [June 5, 2020, 1:23am UTC](https://forum.kirupa.com/t/javascript-tips-of-the-day/641803/17 "2020-06-05T01:23:09Z")

</div>

A post was split to a new topic: [JS Tip of the Day: Internal Slots](https://forum.kirupa.com/t/js-tip-of-the-day-internal-slots/643171)

---

<div class="post-metadata">

### Author: ![senocular](https://yyz1.discourse-cdn.com/flex011/user_avatar/forum.kirupa.com/senocular/32/7217_2.png) [@senocular](https://forum.kirupa.com/u/senocular)
#### Post date: [June 5, 2020, 1:22am UTC](https://forum.kirupa.com/t/javascript-tips-of-the-day/641803/18 "2020-06-05T01:22:53Z")

</div>

A post was split to a new topic: [JS Tip of the Day: Reduce Code with Object Shorthand Syntax](https://forum.kirupa.com/t/js-tip-of-the-day-reduce-code-with-object-shorthand-syntax/643170)

---

<div class="post-metadata">

### Author: ![senocular](https://yyz1.discourse-cdn.com/flex011/user_avatar/forum.kirupa.com/senocular/32/7217_2.png) [@senocular](https://forum.kirupa.com/u/senocular)
#### Post date: [June 5, 2020, 1:22am UTC](https://forum.kirupa.com/t/javascript-tips-of-the-day/641803/20 "2020-06-05T01:22:34Z")

</div>

A post was split to a new topic: [JS Tip of the Day: Declarations let, const and class Can’t be Redeclared](https://forum.kirupa.com/t/js-tip-of-the-day-declarations-let-const-and-class-can-t-be-redeclared/643169)

---

<div class="post-metadata">

### Author: ![senocular](https://yyz1.discourse-cdn.com/flex011/user_avatar/forum.kirupa.com/senocular/32/7217_2.png) [@senocular](https://forum.kirupa.com/u/senocular)
#### Post date: [June 5, 2020, 1:22am UTC](https://forum.kirupa.com/t/javascript-tips-of-the-day/641803/21 "2020-06-05T01:22:18Z")

</div>

A post was split to a new topic: [JS Tip of the Day: Missing Semicolon ASI Gotchas](https://forum.kirupa.com/t/js-tip-of-the-day-missing-semicolon-asi-gotchas/643168)

---

<div class="post-metadata">

### Author: ![senocular](https://yyz1.discourse-cdn.com/flex011/user_avatar/forum.kirupa.com/senocular/32/7217_2.png) [@senocular](https://forum.kirupa.com/u/senocular)
#### Post date: [June 5, 2020, 1:22am UTC](https://forum.kirupa.com/t/javascript-tips-of-the-day/641803/22 "2020-06-05T01:22:01Z")

</div>

A post was split to a new topic: [JS Tip of the Day: typeof null === “object”](https://forum.kirupa.com/t/js-tip-of-the-day-typeof-null-object/643167)

---

<div class="post-metadata">

### Author: ![senocular](https://yyz1.discourse-cdn.com/flex011/user_avatar/forum.kirupa.com/senocular/32/7217_2.png) [@senocular](https://forum.kirupa.com/u/senocular)
#### Post date: [June 5, 2020, 1:21am UTC](https://forum.kirupa.com/t/javascript-tips-of-the-day/641803/23 "2020-06-05T01:21:43Z")

</div>

A post was split to a new topic: [JS Tip of the Day: Overriding Constructor Returns](https://forum.kirupa.com/t/js-tip-of-the-day-overriding-constructor-returns/643166)

[Next page](https://forum.kirupa.com/t/javascript-tips-of-the-day/641803.md?page=2)
