이 글은 자바스크립트 프로그래밍을 참고하여 작성되었습니다.
: 자료형의 일종으로 다양한 값을 모아 둔 또다른 값.
- 종류 : 배열, 함수, 배열이나 함수가 아닌 객체
함수 생성
- function 예약어 사용
function a(){}
const b = function() {};- => 화살표 사용
const c = () => {};- 함수 선언문 : 함수를 상수에 대입하지 않고 function 키워드 뒤에 함수 이름을 넣는 방식
- 함수 표현식 : 함수 b와 같이 상수나 변수에 대입하는 방식
- 세미콜론은 붙여도 되고 안붙여도 되지만 문 뒤에는 붙이지 않는 방식으로 통일하였다.
return
- 값 반환
- 함수의 실행 종료
인수와 매개변수
- 인수(argument) : 함수를 호출할 때 넣는 값
- 매개변수(parameter) : 함수를 선언할 때 사용하는 변수
- 매개변수와 인수의 개수는 일치하지 않아도 된다. 대응되지 않는 매개변수에는 자동으로 undefined 값이 대입된다.
console.log(arguments)함수를 통해 호출 시 넣었던 인수 목록을 볼 수 있다. 화살표 함수에서는 사용할 수 없다. (function으로 선언한 함수에서만 사용 가능)
- 순수 함수 : 자신의 매개변수나 내부 변수(또는 상수)만 사용하는 함수
: {}를 사용해 객체를 표현하는 것
- 속성(property) : 객체 내부에 사용되는 정보들
const 객체 = { 속성1이름: 속성1값, 속성2이름: 속성2값, 속성3이름: 속성3값, }
- 속성 이름은 문자열이어야 하고 속성 값은 모든 값이 들어갈 수 있다.
- 속성에 접근하는 방법
- 온점(.)을 통해 접근
객체.속성이름- [] 사용
객체['속성이름']
- 객체 속성 수정 :
변수.속성 = 값;- 객체 속성 제거 :
delete 변수.속성;
메서드
: 객체의 속성 값으로 함수가 들어가면 이 속성을 메서드라고 한다.const debug() = { log: function(value) { console.log(value); }, }; debug.log('Hello, Method');
참조와 복사
- 참조 : 객체를 저장한 변수를 다른 변수에 대입하면 두 변수 모두 같은 객체를 저장하는 것
하지만 객체가 아닌 값(문자열, 숫자, 불 값, null, undefiend)은 참조 관계가 생기지 않는다.- 복사 : 참조가 생기지 않는 상황