javascript 객체2 생성자 인스턴스 constructor 개념 설명
안녕하세요
오늘은 자바스크립트에서 객체에 대해 조금 더 자세히 설명드리겠습니다.
이 파트는 매우 어려운 부분이라 10번을 봐도 이해가 어렵습니다.
직접 코드를 따라 쳐보시는 것이 가장 빨리 익힐 수 있는 방법입니다.
여기서 객체에 대한 개념부터 3번 보시고 학습하실 것을 추천드립니다.

자바스크립트는 객체(object)기반의 스크립트 언어이며 자바스크립트를 이루고 있는 거의 “모든 것”은 객체이다. 원시 타입(Primitives)을 제외한 나머지 값들(함수, 배열, 정규표현식 등)은 모두 객체이다. 객체는 데이터와 그 데이터에 관련되는 동작(절차,방법,기능)을 모두 포함할 수 있는 개념적 존재이다. 달리 말해, 이름과 값을 가지는 데이터를 의미하는 프로퍼티(property)와 동작을 의미하는 메소드(method)를 포함하고 있는 독립적 주체이다. 객체는 데이터를 한 곳에 모으고 구조화하는데 유용하다. 객체 하나는 ...
poiemaweb.com
중요한 부분만 요약해보았습니다.
목차
1.기본단어 설명
2.메서드 예시
3.생성자 함수
4.Array 메소드
1.기본 단어 설명
인스턴스: 어떤 집합에 대해서 개별적인 요소
constructor: 객체를 생성하고 초기화하기 위한 특별한 메서드
메서드: 프로퍼티 값이 함수일 경우, 일반 함수와 구분하기 위해 메소드라 부른다. 즉, 메소드는 객체에 제한되어 있는 함수를 의미
호이스팅: 함수 안의 변수 선언을 모두 최상단으로 끌어 올려주는 JS 고유의 독특한 기능
클로저: 자바스크립트 고유의 개념이 아니라 함수를 일급 객체로 취급하는 함수형 프로그래밍 언어
Spread 연산자=있던 배열 재활용
Spread 연산자는 배열과 같이 반복 가능한 객체를 단일 요소로 압축 해제
rest 매개변수와는 반대로 압축되어 있는 값을 단일 요소로 압축을 푸는 기능을 수행
rest 매개변수는 객체, 배열, 함수 등 모든 요소를 배열로 모은 것이며, 여러 개의 함수 인수를 전달하는 경우 사용됨
rest 매개변수는 여러 개의 값을 하나로 압축
이때 배열을 보게 되면 무조건 배열고차함수를 떠올려보셔야 합니다.
CSV란?
Comma Seperated Value
2.메서드 예시
아래와 같이 축약표현으로 정의된 함수만을 메서드라 부릅니다.
const obj = {
f1() {
console.log("hi");
}
}
obj.f1();
3.생성자 함수
new 연산자와 함께 호출하여 객체(인스턴스)를 생성하는 함수를 말합니다.
생성자 함수는 보통 첫글자를 대문자로 만듭니다.
function User(name,age) {
this.name = name;
this.age = age;
this.sayName = function() {
console.log(this.name);
}
}
let user1 = new User('Park',35);
user1.sayName();
프로토타입을 사용해서 속성과 메서드를 생성자에 추가할 수 있습니다.
User.prototype.address = "seoul";
생성자 함수에 메서드 추가하기
이때 new를 꼭 붙혀주셔야 합니다.
let user1 = new User('Park', 35);
user1.sayName();
function User1(name,age){
this.name = name;
this.age = age;
this.minors = function(){
if(age<20) {
console.log(`${this.name} 님은 미성년자입니다.`);
} else {
console.log(`${this.name} 님은 성인입니다.`);
}
}
}
let user2 = new User1('kim',10);
let user3 = new User1('choi',25);
let user4 = new User1('Han', 17);

사진 설명을 입력하세요.
let arr1 = [1,2,3]
let arr2 = [4,5,6]
arr2.forEach((num)=> {
arr1.unshift(num);
});
document.write(arr1+"<br>");
document.write(arr2+"<br>");
document.write(...arr1,...arr2+"<br>");
4.Array 메소드
각 언어별로 유용한 메서드를 갖고 있습니다.
<자바스크립트 Array 메소드>
unshift: 앞에 넣기
shift:앞에서 빼기
push: 뒤에서 넣기
pop: 뒤에서 빼기
splice 중간에 넣고 빼기
sort: 정렬
<파이썬 Array 메소드>
insert: 인덱스에 넣기
append: 뒤에서 추가
pop: 뒤에서 빼기
extend: 여러개 추가
sort: 정렬
sort(reversed): 반대로 정렬