ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • ES6문법
    카테고리 없음 2020. 4. 28. 14:59

     

    currying

    function sum(x) {
      return function (y) {
      	return function (z) {
       	  return x + y + z;
        };
      };
    };
    console.log(sum(1)(2)(3))  //6

    arrow function

    화살표 함수표현은 function표현에 비해 구문이 짧고 자신의 this, arguments, super 또는 new.target을 바인딩 하지 않습니다.

    화살표 함수는 항상 익명입니다. 에소드 함수가 아닌 곳에 가장 적합합니다. 생성자로서 사용할 수 없습니다. 

    function sum(x) {
      return y => {
        return z => {
          return x + y + z;
        }
      }
    }
    console.log(sum(1)(2)(3))  //6
    var sum = x => y => z => x + y + z;
    console.log(sum(1)(2)(3))  //6

     

     

    backquote

    'welcome to ' + str1 + str2 + '!'	//"welcome to codestates!"
    `welcome to ${str1}${str2}!`		//"welcome to codestates!"
    
    var template = (username) => `<div>
      $(username}
    </div>`
    
    template("hello")
    /*
    "<div>
      hello
    </div>"
    */
    
    //위의 arrow function을 풀어쓰면 밑에 있는 코드이다.
    var template = function(username) {
      return `<div>
      $(username}
    </div>`
    }
    
    template("hello")
    /*
    "<div>
      hello
    </div>"
    */

     

     

    function 기본값을 설정한다면

    var template = (username = 'hello') => `<div>
      $(username}
    </div>`
    
    template()
    /*
    "<div>
      hello
    </div>"
    */

    댓글

Designed by CHANUL