ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 드림코딩 엘리 javaScript 문법 이해 하기(입문자)
    카테고리 없음 2022. 3. 3. 22:08

    [자바스크립트 배우기전 꼭 봐야할 영상 | 자바스크립트의 역사와 현재 그리고 미래 (JavaScript, ECMAScript, JQuery, Babel, Node.js)

    AJAX(Asynchronous JavaScript and XML) 비동기적

    babel: transcompiler

    node-javascript이용 back-end

    ]

     

    [자바스크립트2. 콘솔에 출력, script async와 defer의 차이점 및 앞으로 자바스크립트 공부 방향

     source탭에서 javascript확인 가능

    공식사이트는 ecma-international.org

    developer.mozilla.org를 더 많이 간다. > w3schools

     

    head+async

    <script async src="main.js"></script> 아직 정의되지 않은 html요소를 javascript가 사용할 수 있는 문제가 있다.

     

    head+defer

    <script defer src="main.js"></script> 가장 효율적인 옵션

     

    javascript맨 위에 

    'use strict';

    를 정의해주면 좋다. 

    ]

     

    [자바스크립트 3. 데이터타입, data types, let vs var, hoisting

    2. Variable
    // let(added in ES6)
     
    Block scope
    {
    }
    블럭밖에서는 블럭안의 코드를 볼 수 없다.

    블럭밖에 정의해서 쓰는 변수를 global scope. 어느 곳에서나 접근이 가능하다. 메모리에 계속 남기 때문에, 최소한으로 사용하는 것이 좋다.

     

    let전에는 var를 사용했다. 쓰지말기.

    var hoisting : var에 변수를 선언하기 전에 값을 할당가능한 것(어디선언했나 상관없이 제일 위로 끌어올려주는 것)

    var는 block scope가 없다.

     

    Constant: 값을 할당하면 값이 절대 바뀌지 않는다. Immutable 데이터 타입
    값이 계속 변경될 수 있는 것은 Mutable 데이터 타입. 
     

    변수는 mutable 타입의 let, immutable타입의 const가 있다.

     

    4. Variable types
    // primitive, single item: number, string, boolean, null, undefied, symbol(더 쪼개질 수 없는 타입)
    // object, box container
    // function, first-class function

    const infinity = 1/0;

    const negativeInfinity = -1/0;

    const nAn = 'not a number' /2;

     

    // boolean
    // false: 0, null, undefined, NaN, '' 

    ]

     

    [자바스크립트 4. 코딩의 기본 operator, if, for loop 코드리뷰 팁

    console.log(`string literals: 1 + 2 = ${1 + 2}`);

    console.log(2**3); 2^3

    x+= y; x=x+y;

     

    Ternary oprator

    condition ? value1 : value2;

    console.log(name === 'ellie' ? 'yes' : 'no');

     

    switch (vrowser) {

    case 'IE':

    console.log('go away!');

    break;

    case 'chrome;

    console.log('love you!);

    break;

    }

    ]

     

    [자바스크립트5.Arrow Function은 무엇인가? 함수의 선언과 표현

    함수이름은 doSomething, command 등 동사형으로 지정

    function name(param1, param2) { body... return;}

    function printHello() {

      console.log('Hello');

    }

    printHello();

     

    function log(message) {

      console.log(message);

    }

    log('Hello@');

     

    parameters-object

    function changeName(obj) {

      obj.name = 'coder';

    }

    const ellie = {name: 'ellie' };

    changeName(ellie);

    console.log(ellie);

     

    3. Default parameters(added in ES6)

    function showMessage(message, from = 'unknown') {

      console.log(`${message} by ${from}`);

    }

    showMessage('Hi!');

     

    4. Rest parameters (added in ES6)

    function printAll(...args0 { 배열형태로 전달

      for(let i=0;i<args.length; i++) {

        console.log(args[i]);

      }

    }

    pritAll('dream', 'coding', 'ellie');

     

    for (const arg of args) { 모든값 출력

      console.log(arg);

    }

     

    args.forEach((arg) => console.log(arg));

     

    1. Function expression

    const print = function () {

       console.log('print');

    };

    print();

    const printAgain = print;

     

    2. Callback function 

    function randomQuiz(answer, printYes, printNo) {

      if (answer === 'love you') {

        printYes();

      } else {

        printNo();

      }

    }

     

    const printNo = function print() {

    3. Arrow function

    const simplePrint = () => console.log('simplePrint!');

    const add = (a, b) => a+b;

    const simpleMultiply = (a,b) => {

      return a*b;

    };

    4. IIFE: Immediately Invoked FUnction Expression 선언함과 동시에 호출

    (function hello() {

      console.log('IIFE');

    })();

    ]

     

    [자바스크립트 6. 클래스와 오브젝트의 차이점(class vs object), 객체지향 언어 클래스 정리

    class person {

      name;

      age;  속성(field)

      speak(); 행동(method)

    }

     

    class: template

    object: instance of a class

Designed by Tistory.