그렇기 때문에 공식문서를 볼 때 당황하지 않고 적용하기 위해서 그리고 기존 자바스크립트보다 더 함축적이고 간결한 문법을 사용하기 위해 배워보자!
함수를 더 짧게! - 화살표 함수
기존에는 함수를 선언하기 위해서 function 키워드를 사용했다. 이를 화살표 함수 (Arrow Function) 문법으로도 선언이 가능하다.
[기존 방식]
let a = function() { console.log("function"); } a();
[최신 방식]
let a = () => { console.log("arrow function"); } a();.
딕셔너리 키와 값을 빠르게 꺼내기! - 비구조 할당
기존에는 객체(딕셔너리)를 생성할 때, 필드명과 대입할 변수명이 같은 상황에서 다음과 같이 코드를 작성하였다.
딕셔너리는 키와 벨류의 값의 쌍일 수도 있고 함수를 품은 이것도(getPost()) 키의 벨류로 함수를 가질 수도 있다.
//객체 let blog = { owner : "noah", url : "noahlogs.tistory.com", getPost() { console.log("ES6 문법 정리"); } };
//기존 할당 방식 let owner = blog.owner let getPost = blog.getPost()
//비구조 할당 방식 let { owner, getPost } = blog; //각각 blog 객체의 owner , getPost() 의 데이터가 할당 //blog의 키 값과 이름이 같아야 한다! //(예 - owner가 아니라 owner2를 넣어보면! 아무것도 안 들어온다.)
** 리액트 네이티브 앱을 만들며 가장 많이 사용할 방식**
//함수에서 비구조 할당 방식으로 전달된 딕셔너리 값 꺼내기 let blogFunction = ({owner,url,getPost}) => { console.log(owner) console.log(url) console.log(getPost()) }
blogFunction(blog)
자바스크립트 안에서 줄바꿈을 자유롭게! - 리터럴
최신 방식에서는 키보드에서 느낌표 옆에 있는 키인 백틱 ( ` )을 이용하여 문자열을 + 기호 없이 간단히 처리할 수 있다. 또한 백틱 ( ` ) 안에서는 여러 줄의 줄 바꿈도 자유롭게 사용 가능하다.
const id = "myId" ; const url = `http://noahlog.tistory.com/login/${id}` ;
const message = "줄바꿈을 하려면 \n 이 기호를 써야 했다!"
const message = ` 줄바꿈도 마음대로 사용이 가능하다. `
딕셔너리를 짧게 만들어보기! - 객체 리터럴
기존에는 객체(딕셔너리)를 생성할 때, 필드명과 대입할 변수명이 같은 상황에서 다음과 같이 코드를 작성한다.