/*
{data:{movies}} == movies.data.movies
왼쪽은 es6로 간단하게 바꾼것이다
{{movies}}== {movies:movies}
*/
/*
1. KEY와 value가 동일하면? name:name,이 아니라 name, 하나로 축약이 가능하다.
2. 변수 접근법
*/
const stu={
name4:'yun',
age3:5
}; console.log(Error);
// const name4= stu.name4;
// const name4= stu.age3; // stu의 name과 age를 가져오려면 요런식으로 .을 써서 접근 해야했지만
const{name4,age3}=stu; //{}하나로 접근이 가능해졌다
const{name4:nana}=stu; //로 이름변경도 가능해졌다, 배열로 접근도 가능해졌다 ayn(0);이 아니라 [ayn]로 가능
/*
3 [...array] 로 배열을 복사해 올 수 있게 되었다.
*/
const qw=[1,2,3];
const qwcopy=[...qw];
qw[0]=5;
//잊지말자 내용이 아니라 주소값이 복사되어 온거다. 따라서 중간에 배열 내용을 하나 변경하면 복사한 모든게 다같이 변경된다.
const qwcopy2=[...qw,{4:4}]; //요런식으로 내용 추가가 가능하다.
console.log(qwcopy2);
//위에것을 이용해 배열을 하나로 합치는 것도 가능하다.
//오브젝트 또한 가능하다. {}을 써주면 된다.
//주의 키 값이 같을 경우 나중에 써준 키가 먼저 온 키를 덮어쓴다.
const color=['sky','pink','red'];
const color2=['baby','nine','noon'];
const add=[...color,...color2];
console.log(add);
/*
4. default parameters
함수를 호출할때 inha(); 이런식으로 ()안에 내용이 없는 인자는 콘솔상에 undifine라고 뜬다.
이때 이 undefine이 뜨는게 싫다면
function printMessage(message='default parameters'){
consol.log(message);
}
라고 써주면 default parameters 라고 콘솔상에 뜹니다.
5. 삼항연산자
if else, elseif 대신에 써주자
*/
const iscat = false;
const component = iscat ? 'cat' : 'dog';
//iscat이 만약에 트루라면 cat을 띄우고 아니라면 dog를 띄워라
console.log(component);
/*
6. 'num' + 'num2' + 'easy' 이런 ++ 대신에 써주는 ${} 이거에 대한 내용
*/
const we ='맑은';
const tem=32;
console.log(
'today 날씨'+we+'입니다 ' + '또한 온도는 ' + tem +' 입니다.'
);
console.log(
`today 날씨${we}입니다. 또한 온도는${tem}입니다`
);
/*
7. 화살표 함수
*/
let sum = function( a , b ) {
return a + b;
}
// 바꾸기
let sum = ( a + b ) => a + b;