const multiply = ( x, y ) => x * y;
multiply(2, 3); //결과 6
const arrow = ( x, y ) => {...}; // 매개변수 여러개인 경우
const arrow = x => {...}; // 매개변수 한개인 경우
const arrow = () => {...}; // 매개변수 없는 경우
//람다식 표현방법
const power = x => x**2
power(2); //결과 4
//함수 표현방법
const power = function( x ) { return x**2};
power(2); //결과 4
//객체 리터럴을 반환하는 경우
const create = (id, content) => ({id,content});
create(1, 'JS'); //결과 : {id: 1, content: "JS"}
//위와 같은 표현
const create = (id, content) => {return {id, content}; };
const power에서 power는 함수 이름을 가르키며, 일반 함수 표현 방법에 나오는 방식은 익명 함수 표현식이다.
This는 자신이 속한 객체나 자신이 생성할 인스턴스를 가리키는 자기 참조 변수이다.
const number = [1, 2, 3, 4, 5];
const odds = number.filter(item => item % 2);
console.log(odds); // 결과 : [1, 3, 5]
const number2 = [3, 5, 6, 7, 8];
let allNumber = number.concat(number2); // number, number를 결합
console.log(allNumber); //[1,2,3,4,5,3,5,6,7,8]
function filtered(el, i, a){
console.log(`요소: ${el}, 인덱스:${i}`);
if(a.indexOf(el) === i) { //요소와 인덱스가 맞으면 반환
return a;
}
}
let result = allNumber.filter(filtered);
console.log(result);
let result2 = allNumber.filter((el, i) =>allNumber.indexOf(el) === i); //한줄로 표현
console.log(result2)
Pythontutor
https://pythontutor.com/visualize.html#mode=display