<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: aditya1922</title>
    <description>The latest articles on DEV Community by aditya1922 (@aditya1922).</description>
    <link>https://dev.to/aditya1922</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F534214%2F19b803f2-4635-4bd1-a311-d93866f0f2ef.png</url>
      <title>DEV Community: aditya1922</title>
      <link>https://dev.to/aditya1922</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/aditya1922"/>
    <language>en</language>
    <item>
      <title>ES6 Mini Crash Course: How to Write Modern JavaScript</title>
      <dc:creator>aditya1922</dc:creator>
      <pubDate>Sun, 06 Dec 2020 06:54:43 +0000</pubDate>
      <link>https://dev.to/aditya1922/es6-mini-crash-course-how-to-write-modern-javascript-15i5</link>
      <guid>https://dev.to/aditya1922/es6-mini-crash-course-how-to-write-modern-javascript-15i5</guid>
      <description>&lt;p&gt;import "./styles.css";&lt;/p&gt;

&lt;p&gt;document.getElementById("app").innerHTML = `&lt;/p&gt;

&lt;h1&gt;Check the console for output&lt;/h1&gt;

&lt;p&gt;`;&lt;/p&gt;

&lt;p&gt;for(var i = 0; i &amp;lt; 10; i++) {&lt;/p&gt;

&lt;p&gt;}&lt;br&gt;
// i should be undefined here:&lt;br&gt;
console.log("i", i)&lt;br&gt;
// SURPRISE! It's not&lt;/p&gt;

&lt;p&gt;let counter = 0&lt;br&gt;
counter += 1&lt;br&gt;
console.log(counter)&lt;/p&gt;

&lt;p&gt;const newCounter = 0&lt;br&gt;
// doNotChange += 1 // this will throw an error!&lt;/p&gt;

&lt;p&gt;import "./styles.css";&lt;/p&gt;

&lt;p&gt;document.getElementById("app").innerHTML = `&lt;/p&gt;

&lt;h1&gt;Check the console for output&lt;/h1&gt;

&lt;p&gt;`;&lt;/p&gt;

&lt;p&gt;// Traditional functions define &lt;code&gt;this&lt;/code&gt; at running time&lt;br&gt;
// Arrow functions define &lt;code&gt;this&lt;/code&gt; at definition time,&lt;/p&gt;

&lt;p&gt;class MyClass {&lt;br&gt;
  regular() {&lt;br&gt;
    return function() {&lt;br&gt;
      console.log("regular this: ", this) // undefined&lt;br&gt;
    }&lt;br&gt;
  }&lt;/p&gt;

&lt;p&gt;arrow() {&lt;br&gt;
    return () =&amp;gt; {&lt;br&gt;
      console.log("arrow this: ", this) // MyClass&lt;br&gt;
    }&lt;br&gt;
  }&lt;br&gt;
}&lt;/p&gt;

&lt;p&gt;const c = new MyClass()&lt;br&gt;
c.regular()()&lt;br&gt;
c.arrow()()&lt;/p&gt;

&lt;p&gt;// Three different function types&lt;/p&gt;

&lt;p&gt;const functionType1 = (arg1, arg2) =&amp;gt; {&lt;br&gt;
  const sumValue = arg1 + arg2&lt;br&gt;
  return "Sum is: " + sumValue&lt;br&gt;
}&lt;/p&gt;

&lt;p&gt;const functionType2 = (arg1, arg2) =&amp;gt; &lt;br&gt;
  "Values are: " + arg1 + " and " + arg2&lt;/p&gt;

&lt;p&gt;const functionType3 = onlyArg =&amp;gt;&lt;br&gt;
  "Only 1 arg here: " + onlyArg&lt;/p&gt;

&lt;p&gt;console.log(functionType1(1, 3))&lt;br&gt;
console.log(functionType2("a", "b"))&lt;br&gt;
console.log(functionType3("a"))&lt;/p&gt;

&lt;p&gt;// Default values&lt;/p&gt;

&lt;p&gt;const plusTenOrX = (arg1, arg2 = 10) =&amp;gt; {&lt;br&gt;
  const sumValue = arg1 + arg2&lt;br&gt;
  return "Sum is: " + sumValue&lt;br&gt;
}&lt;/p&gt;

&lt;p&gt;console.log(plusTenOrX(1))&lt;br&gt;
console.log(plusTenOrX(1, 5))&lt;/p&gt;

&lt;p&gt;import "./styles.css";&lt;/p&gt;

&lt;p&gt;document.getElementById("app").innerHTML = `&lt;/p&gt;

&lt;h1&gt;Check the console for output&lt;/h1&gt;

&lt;p&gt;`;&lt;/p&gt;

&lt;p&gt;const pullOutKey = (myObject) =&amp;gt; {&lt;br&gt;
  const { first } = myObject&lt;br&gt;
  console.log("First? ", first)&lt;br&gt;
  // First?  1 &lt;br&gt;
}&lt;/p&gt;

&lt;p&gt;const pullOutOfArray = (myArr) =&amp;gt; {&lt;br&gt;
  const [first, second] = myArr&lt;br&gt;
  console.log("First two elements: ", first, second)&lt;br&gt;
  // First two elements:  a b &lt;br&gt;
}&lt;/p&gt;

&lt;p&gt;const namedParams = ({ first, second }) =&amp;gt; {&lt;br&gt;
  console.log("params: ", first, second)&lt;br&gt;
  // params:  1 2 &lt;br&gt;
}&lt;/p&gt;

&lt;p&gt;const obj = {&lt;br&gt;
  first: '1',&lt;br&gt;
  second: '2',&lt;br&gt;
  third: '3'&lt;br&gt;
}&lt;br&gt;
pullOutKey(obj)&lt;/p&gt;

&lt;p&gt;const arr = ['a', 'b', 'c', 'd']&lt;br&gt;
pullOutOfArray(arr)&lt;/p&gt;

&lt;p&gt;namedParams(obj)&lt;/p&gt;

&lt;p&gt;import "./styles.css";&lt;/p&gt;

&lt;p&gt;import { people, droids } from './data'&lt;br&gt;
import data from './data'&lt;/p&gt;

&lt;p&gt;console.log("people: ", people)&lt;br&gt;
// ["Luke", "Leia", "Han"]&lt;/p&gt;

&lt;p&gt;console.log("droids: ", droids)&lt;br&gt;
// {C-3PO: "protocol droid", R2-D2: "astromech droid"}&lt;/p&gt;

&lt;p&gt;console.log("data keys: ", Object.keys(data))&lt;br&gt;
// ["people", "droids"]&lt;/p&gt;

&lt;p&gt;document.getElementById("app").innerHTML = `&lt;/p&gt;

&lt;h1&gt;Check the console for output&lt;/h1&gt;

&lt;p&gt;`;&lt;br&gt;
import "./styles.css";&lt;/p&gt;

&lt;p&gt;document.getElementById("app").innerHTML = `&lt;/p&gt;

&lt;h1&gt;Check the console for output&lt;/h1&gt;

&lt;p&gt;`;&lt;/p&gt;

&lt;p&gt;const restOfArray = myArray =&amp;gt; {&lt;br&gt;
  const [one, ...rest] = myArray&lt;br&gt;
  console.log("one: ", one)&lt;br&gt;
  // "Luke"&lt;br&gt;
  console.log("rest arr: ", rest)&lt;br&gt;
  // ["Leia", "Han"]&lt;br&gt;
}&lt;/p&gt;

&lt;p&gt;const restOfObject = myObject =&amp;gt; {&lt;br&gt;
  const { C3PO, ...rest } = myObject&lt;br&gt;
  console.log("C3PO: ", C3PO)&lt;br&gt;
  // "protocol droid"&lt;br&gt;
  console.log("rest obj: ", rest)&lt;br&gt;
  // {R2D2: "astromech droid"}&lt;br&gt;
}&lt;/p&gt;

&lt;p&gt;const people = [&lt;br&gt;
  "Luke",&lt;br&gt;
  "Leia",&lt;br&gt;
  "Han"&lt;br&gt;
]&lt;br&gt;
restOfArray(people)&lt;/p&gt;

&lt;p&gt;const droids = {&lt;br&gt;
  C3PO: "protocol droid",&lt;br&gt;
  R2D2: "astromech droid"&lt;br&gt;
}&lt;br&gt;
restOfObject(droids)&lt;/p&gt;

&lt;p&gt;const moreDroids = {&lt;br&gt;
  K2SO: "security droid",&lt;br&gt;
  BB8: "astromech",&lt;br&gt;
  ...droids&lt;br&gt;
}&lt;/p&gt;

&lt;p&gt;console.log(moreDroids)&lt;br&gt;
// {K2SO: "security droid", BB8: "astromech", C3PO: "protocol droid", R2D2: "astromech droid"}&lt;/p&gt;

&lt;p&gt;const myStr = &lt;code&gt;New way to define strings&lt;/code&gt;&lt;br&gt;
console.log(typeof myStr)&lt;br&gt;
// string  // notice that it's still a string!&lt;/p&gt;

&lt;p&gt;const value1 = "Chris"&lt;/p&gt;

&lt;p&gt;const hello = &lt;code&gt;Hello, ${value1}!&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;console.log(hello)&lt;br&gt;
// "Hello, Chris!"&lt;/p&gt;

</description>
      <category>javascript</category>
      <category>css</category>
      <category>computerscience</category>
      <category>angular</category>
    </item>
  </channel>
</rss>
