From 582356cbe3d5a14e7c33d71f4743ff7bd45fdcd9 Mon Sep 17 00:00:00 2001 From: roeib Date: Tue, 15 Mar 2022 09:46:20 +0200 Subject: [PATCH 1/5] randomUUID --- README.md | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/README.md b/README.md index bdfb40b..de6bad4 100644 --- a/README.md +++ b/README.md @@ -47,6 +47,10 @@ |41 | [How to convert an array of key-value tuples into an object](#How-to-convert-an-array-of-key-value-tuples-into-an-object)| |42 | [Native text to speech JS](#Native-text-to-speech-JS)| |43 | [toFixed](#toFixed)| +|44 | [generate randomUUID](#generate-random-uuid)| + + + @@ -939,3 +943,18 @@ Warning: Floating point numbers cannot represent all decimals precisely in binar 2.65.toFixed(1) // Returns '2.6'. Note it rounds down -why??? see the warning above ``` + + +**[⬆ Back to Top](#table-of-contents)** +### generate random uuid + +The randomUUID() method of the Crypto interface is used to generate a v4 UUID using a cryptographically secure random number generator. + +```javascript + +crypto.randomUUID() // print in console '460ff1e6-2106-4848-833d-5c5b3bfdc943' + +crypto.randomUUID() // print in console '9a91c014-d1b1-453a-8091-ef8b9b48b14a' + + +``` From b34f9d143865d82b9fba9a94bcc3f3b81b568cc2 Mon Sep 17 00:00:00 2001 From: roeib Date: Wed, 3 Aug 2022 11:25:15 +0300 Subject: [PATCH 2/5] structuredClone --- README.md | 30 +++++++++++++++++++++++++++--- 1 file changed, 27 insertions(+), 3 deletions(-) diff --git a/README.md b/README.md index de6bad4..cf3f505 100644 --- a/README.md +++ b/README.md @@ -48,9 +48,7 @@ |42 | [Native text to speech JS](#Native-text-to-speech-JS)| |43 | [toFixed](#toFixed)| |44 | [generate randomUUID](#generate-random-uuid)| - - - +|45 | [structuredClone](#structuredClone)| @@ -957,4 +955,30 @@ crypto.randomUUID() // print in console '460ff1e6-2106-4848-833d-5c5b3bfdc943' crypto.randomUUID() // print in console '9a91c014-d1b1-453a-8091-ef8b9b48b14a' +``` + + +**[⬆ Back to Top](#table-of-contents)** +### structuredClone + +If you want to deep clone a value in Node.js, you no longer need to use a library or the JSON.parse(JSON.stringify(value)) hack. You can use the new global function structuredClone() + +```javascript + +const user = { + name: "JS Snippets", + address: { street: "Original Road", city: "Placeshire" }, +}; + +const clonedUser = structuredClone(user); + +clonedUser.address.street = "New Road"; + +console.log("user.address.street:", user.address.street); +// > Original Road + +console.log("clonedUser.address.street:", clonedUser.address.street); +// > New Road + + ``` From b2d0d5e7cef104535d7d087dd4a0ba2c1105a5b5 Mon Sep 17 00:00:00 2001 From: roeib Date: Mon, 30 Jan 2023 16:23:25 +0200 Subject: [PATCH 3/5] get device orientation get device orientation --- README.md | 18 +++++++++++++++--- 1 file changed, 15 insertions(+), 3 deletions(-) diff --git a/README.md b/README.md index cf3f505..3046c8b 100644 --- a/README.md +++ b/README.md @@ -49,9 +49,7 @@ |43 | [toFixed](#toFixed)| |44 | [generate randomUUID](#generate-random-uuid)| |45 | [structuredClone](#structuredClone)| - - - +|46 | [get device orientation](#get-device-orientation)| **[⬆ Back to Top](#table-of-contents)** @@ -981,4 +979,18 @@ console.log("clonedUser.address.street:", clonedUser.address.street); // > New Road +``` + +**[⬆ Back to Top](#table-of-contents)** +### get device orientation + +Browsers expose a global variable named screen, which we’ll use to access the information we need. + +```javascript + +function getOrientation() { + const isPortrait = screen.orientation.type.startswith('portrait') + return isPortrait ? 'portrait' : 'landscape' +} + ``` From 8f85e7133d4c0c7563a6afe2b5541a79c2bc92c2 Mon Sep 17 00:00:00 2001 From: roeib Date: Wed, 8 Feb 2023 11:40:56 +0200 Subject: [PATCH 4/5] CONST vs LET vs VAR --- README.md | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index 3046c8b..da616aa 100644 --- a/README.md +++ b/README.md @@ -50,7 +50,7 @@ |44 | [generate randomUUID](#generate-random-uuid)| |45 | [structuredClone](#structuredClone)| |46 | [get device orientation](#get-device-orientation)| - +|47 | [CONST vs LET vs VAR](#const-let-var)| **[⬆ Back to Top](#table-of-contents)** ### How to generate a random number in a given range @@ -994,3 +994,14 @@ function getOrientation() { } ``` + +**[⬆ Back to Top](#table-of-contents)** +### CONST vs LET vs VAR + +| | const | Let | Var | +|------------------------|-------|-----|-----| +| Can be Reaasigned? | X | :white_check_mark: | V | +| Cab be Redeclared? | X | X | V | +| Block Scope | V | V | X | +| Function Scope | V | V | V | +| Stored in Global Scope | X | X | V | From 23fe606caaa26c9ffde116274b56afdd9455bc72 Mon Sep 17 00:00:00 2001 From: roeib Date: Wed, 8 Feb 2023 11:43:49 +0200 Subject: [PATCH 5/5] Update README.md --- README.md | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/README.md b/README.md index da616aa..dcd01f3 100644 --- a/README.md +++ b/README.md @@ -1000,8 +1000,8 @@ function getOrientation() { | | const | Let | Var | |------------------------|-------|-----|-----| -| Can be Reaasigned? | X | :white_check_mark: | V | -| Cab be Redeclared? | X | X | V | -| Block Scope | V | V | X | -| Function Scope | V | V | V | -| Stored in Global Scope | X | X | V | +| Can be Reaasigned? | :x: | :white_check_mark: |:white_check_mark: | +| Cab be Redeclared? | :x: | :x: | :white_check_mark: | +| Block Scope | :white_check_mark: |:white_check_mark: | :x: | +| Function Scope | :white_check_mark: | :white_check_mark: | :white_check_mark: | +| Stored in Global Scope | :x: | :x: | :white_check_mark: |