자바스크립트 복습 - 1

Stulta Amiko·2022년 5월 4일
0

자바스크립트 복습

목록 보기
1/12
post-thumbnail

작년 말쯤부터 웹개발을 하겠다고 무작정 HTML CSS JS 그리고 Node.js를 했었다.
문제점이라고 하면 무작정 했기때문에 자바스크립트에 대한 이해도가 낮았던 점이다.
다른 언어라면 꽤나 해봐서 기본적인 문법을 하는데 문제가 있었던것은 아니고
자바스크립트만 가지고 있는 특이한 특성때문에 문제가 됐던점과 CJS 그리고 ES 문법이 헷갈렸기 때문에 오히려 문제가 됐었고 이번기회에 아는것도 모르는것도 공부할겸
까먹지 않기 위해서 복습하려고 한다.

객체

자바가 됐던 C++이 됐던 C언어 이후로 유명한 언어들은 죄다 OOP다
OOP의 다형성이던 상속이던 여러 중요한 개념이 있지만
객체에 대해서 모르는 사람도 많은것같다.
학교에서 수업을 듣다보면 객체가 뭔지도 자세히 모른다.

const plane = {
	wing: 2,
    color: "white",
    };

간단한 객체를 만들어 보았다.

객체라는 개념이 단순하면서도 헷갈리는것 같다.
아무래도 클래스랑 객체랑 헷갈리는것 같다고 생각한다.
자바스크립트의 객체는 여러 속성의 모음을 저장하는데 사용한다.
key-value 타입인거같다.

const plane ={
	wing:2 ,
    color: "white",
    fly: function(){
    	console.log("fly");
    }
}
console.log(Object.keys(plane)[0] // wing
console.log(plane.wing) // 2
plane.fly(); // "fly"
        

간단하게 객체를 이용하는 코드를 만들어 봤다

사용도 평범하게 다른언어처럼 하는거같다.

객체의 복사

const plane = {
    wing: 2,
};
const plane2 = plane;
console.log(plane); // {wing: 2}
console.log(plane2 === plane); // true

const obj1 = {};
const obj2 = {};
console.log(obj1 === obj2); //false

객체의 복사에대해서 알아보면 단순히 주소값만 가져오는 plane2의 경우에는 비교연산자를 사용했을때 true를 반환하는 반면

같은 값을 가지고있는 obj1과 obj2는 서로 다르고 한다.
동일한 객체여야만 true를 반환한다.

객체를 복사하고 싶으면 assign함수를 이용하면된다.
assign(copyobj,copytoobj)
copyobj에는 복사본에 해당하는 객체를 copytoobj에는 복사할 객체를 넣어서 복사를 하면된다.

배열

배열은 다른언어와 비슷하나
push pop unshift shift가 특이하게 있다.
push는 배열끝에 새 값을 추가하는 함수고
unshift는 배열 맨 앞에 새 값을 추가하는 함수이다.
pop은 배열 맨끝에 값을 제거하고
shift는 배열 맨앞의 값을 제거한다.

오늘은 여기까지 복습해야겠다. 1일차 끝

0개의 댓글