- 화살표 함수에서 {}를 생략하면 다음에 오는 코드는 return문으로 처리되는 특징이 있다.
const sum = (num1, num2) => num1 + num2;
- 매개변수 : 함수에서 데이터를 받기위해 선언하는 변수
타입을 명시할 필요는 없다.
function gugudan(temp){
for(let i=1; i<=9; i++){
console.log(`${temp} * ${i} = ${temp*i}`);
}
}
gugudan(8);
gugudan(9);
sample();
function sample(){
console.log(1);
console.log(2);
return;
console.log(3);
}
- 즉시 실행 함수
함수를 정의하면서 동시에 실행까지 하는 함수
실행이 된 이후에 메모리에 데이터가 남아있지 않는다.
(function(){
console.log('일회용 함수');
})();
- 객체에 속성을 동적으로 추가하기
객체의 속성에 접근해서 값을 할당할 때 없는 속성일 경우 키와 값으로 구성된 속성을 객체에 추가된다.
- delete 키워드로 객체의 속성을 삭제할 수 있다.
delete person.age;
let arr2 = [4, 5, 6];
let arr4 = [...arr2];
arr4[0] = 9;
console.log(arr2);
console.log(arr4);
💡 배열 관련 메소드
- push() : 배열의 뒤에 데이터를 추가
- pop() : 배열의 뒤의 데이터를 삭제
- shift() : 배열의 앞의 데이터를 삭제
- unshift() : 배열의 앞에 데이터를 추가
- splice() : (인덱스, 삭제갯수, 넣을 값), (인덱스 , 삭제갯수), (인덱스, 0, 넣을 값)
- sort() : 배열의 데이터를 정렬
💡 문자열 관련 메소드
- 변수명.length : 길이를 반환
- 변수명.includes('문자') : 해당 문자를 포함하는지 여부
- 변수명.indexOf('문자') : 해당 문자의 위치를 확인, 리턴 값이 -1일 경우에는 포함하지 않는다는 의미
- 변수명.substring(시작인덱스, 끝인덱스) : 해당 범위의 문자열을 추출한다. 마지막 인덱스는 포함하지 않는다.
- 변수명.split('문자') : 해당 문자를 기준으로 문자열을 분리하여 배열 형태로 리턴한다.
- 변수명.charAt(index) : 해당 위치의 문자를 추출한다.
- 변수명.toUpperCase() : 대문자로 변환한다.
- 변수명.toLowerCase() : 소문자로 변환한다.
- 변수명.trim() : 앞뒤의 공백을 제거한다.
- 파괴적 메소드와 비파괴적 메소드
- 목적이 파괴였을 때 결과가 비파괴적이었다면 변수에 값을 덮어써서 사용한다.
- 목적이 비파괴였을 때 결과가 파괴일 경우에는 결과 값을 복사해서 사용한다.