[기존 방식]
let a = function() { // function a() { ~~ } 와 같음
console.log("function");
}
a();
[최신 방식]
let a = () => {
console.log("arrow function");
}
a();.
//객체
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 url = 'http://noahlog.tistory.com/login/' + id
const message = "줄바꿈을 하려면 \n 이 기호를 써야 했죠!"
const message = ` 줄바꿈도 마음대로
사용이 가능합니다. `
[기존 방식]
var name = "스파르타";
var job = "developer";
var user = {
name: name,
job: job
}
console.log(user);
//{name: "스파르타", job: "developer"}
[최신 방식]
var name = "스파르타";
var job = "developer";
var user = {
name,
job
}
console.log(user);
//{name: "스파르타", job: "developer"}
arr.map(callbackFunction(element, index, array), thisArg)
- index, array, thisArg 생략 가능
[for문]
let numbers = [1,2,3,4,5,6,7];
for(let i=0; i<numbers.length; i++){
console.log(numbers[i]);
}
[map문]
let numbers = [1,2,3,4,5,6,7]
numbers.map((value,i) => {
console.log(value,i)
})
// 아래와 같다는 점! 눈치 채셨나요?
numbers.map(function(value,i) {
console.log(value,i)
})
//1 0
//2 1
//3 2
//4 3
//5 4
//6 5
//7 6
let numbers = [1,2,3,4,5,6,7]
let num_list = numbers.map((value) => {
return value
})
console.log(num_list) // [1,2,3,4,5,6,7]
const newArray = arr.filter( callbackFunction( element, index, array ), thisArg );
- index, array, thisArg 생략 가능
let fruit_list = ['사과','감','감','배','포도','포도','딸기',
'포도','감','수박','딸기']
let grape_list = fruit_list.filter((fruit) => {
return fruit == '포도'
})
console.log(grape_list) // ['포도', '포도', '포도']