안녕
-
자바스크립트 - apply / call / bind프로그래밍/JavaScript 자바스크립트 2021. 9. 30.
Function - apply(), call() 메소드 apply는 함수를 호출하는 다른 방법 중 하나이다. sum()이라는 함수를 호출 하려고 할 때 apply를 통해서 호출 하려면 sum.apply(null, [1,2,3]) 이렇게 해야한다. null의 위치에는 원래 this.뭐뭐 가 들어간다. 뒤에 인자는 대괄호로 덮어야 한다. (배열과 비슷해 보이지만 배열 아님) call은 apply와 동일한데 뒤에 인자 부분에 대괄호가 필요 없다. (대괄호는 안쓰는데 전달 받은 인수를 배열로 처리함. 리스트화) Function - apply(), call() 메소드 apply와 call을 이용하면 코드를 간소화 시킬 수 있다. obj와 obj2를 비슷한 기능을 하게 하고 싶은데 obj의 내용을 똑같이 obj2에..
-
자바스크립트 - 클래스프로그래밍/JavaScript 자바스크립트 2021. 9. 30.
클래스 자바처럼 비슷하게 클래스 생성이 가능한데 주의할 점은 자바스크립트에서 생성자는 무조건 constructor를 통해서 생성 해야함. 클래스 자바와 유사한 모습 클래스 대괄호 [] 안에 함수 이름을 넣어서 그걸 메소드 이름으로 사용하는게 있는데 잘 안쓰인다. 클래스 - getter, setter 자바의 게터 세터 getter / setter 와 비슷한 내용 _언더바는 그냥 변수 이름이다. naem의 메소드가 2개있는데 인자가 있냐 없냐에 따라서 기능이 다른것. obj.name = '홍길동' 이건 클래스 User의 객체 obj를 통해서 name(newName)을 호출한 것이랑 동일 클래스 게터 세터 응용한 모습 클래스 - 프로퍼티 클래스 - 상속 자바스크립트도 자바처럼 상속의 개념이 있다. 자바의 su..
-
자바스크립트 - 객체(3)프로그래밍/JavaScript 자바스크립트 2021. 9. 30.
객체 - 프로퍼티 동적 추가, 삭제 객체 - 프로퍼티 접근 및 나열 객체 - 속성 및 메소드 추가 객체의 속성을 제거 할 때는 delete obj.city 이런식으로 해주기 객체 속성에 접근할때는 . 붙여서 obj.name 이렇게도 가능 하지만, obj['name'] 이렇게 대괄호로도 가능하다. 객체 메소드에 접근할때는 꼭 괄호 붙여야한다. ex) obj.msg() 보통 속성이나 메소드 추가할때는 그냥 점 붙여서 한다. 없는 속성을 새로 추가하고 싶을때 = obj.score = 80; 정적 메소드 생성자를 만들 수 있다. 인자가 필요한 생성자 안에도 변수의 기본값은 설정 가능하다. 프로토 타입 객체에 프로퍼티나 메소드 추가. prototype 이용 프로퍼티를 이용하면 이미 존재하는 객체 안에 새로운 함수..
-
자바스크립트 - 배열 / 객체 (2)프로그래밍/JavaScript 자바스크립트 2021. 9. 30.
객체 만들기 객체를 선언과 동시에 초기화 할 수 있다. 그리고 만든 객체의 여러 정보들을 보고 싶을때 console.log로 좋지만 console.dir도 자세한 정보를 보여준다. obj2.subject = "자바"; 이런식으로 기존에 만들었던 객체에 속성을 추가 할 수 있다. var obj3 = { name : '홍길동', age : 20, state : function() { return this.age >= 19 ? '성인' : '미성년자'; }, msg : function() { // 메소드안에서 속성 및 다른 메소드를 호출할때 this 생략 불가 var s = `${this.name}님은 ${this.state()} 입니다`; console.log(s); } }; 그리고 이건 객체에 속성을 넣었..
-
자바스크립트 - 배열 / 객체 (1)프로그래밍/JavaScript 자바스크립트 2021. 9. 30.
내장객체 - Array 1차원 배열 생성 방법 var a1 = []; 빈 배열 만들고 a1[0] = 3; 이렇게 인덱스를 이용해서 추가 하는 방법과 var a2 = [1,2,3,4,5]; 이렇게 선언과 동시에 값을 주는 방법이 있다. Array() 생성자로 배열 만드는 방법. - var b1 = new Array(); 빈 배열을 만듬. - var b2 = new Array(5); 배열의 크기가 5인 배열을 만듬. - var b3 = new Array(1, 2); 하지만 인자가 2개이상 들어가면 값으로 취급함. b3의 배열안에 1과 2가 들어가있음. 내장객체 - Array : 2차원 배열 2차원 배열 만들기. var a1 = new Array(2); 먼저 크기가 2인 배열을 만들고 a1[0] = new A..
-
자바스크립트 - 달력프로그래밍/JavaScript 자바스크립트 2021. 9. 28.
화살표 클릭으로 전달 다음달 등등 여러 달의 달력을 확인 할 수 있다. 오늘 날짜 클릭으로 원점으로 돌아올 수 도 있다. 함수 calendar은 연과 월을 인자로 입력 받아서 객체를 만들고 그걸 Date 함수로 변수 y, m을 만든다. 변수 w 는 무슨 요일인지 알기 위해서 .getDay()를 이용해서 만든다. out에는 HTML에 들어갈 내용들을 넣는다. HTML 내용들은 계속 추가가 되니까 out 변수에 += 을 이용해서 같은곳에 계속 넣어준다. 상단에 월을 바꾸는 화살표에 기능을 넣기 위해서 onclick를 만들고 아까 만든 calendar 함수와 연결 시켜준다. 그리고 월~일 까지 요일을 구분 표시 할 수 있게 for문을 돌린다. out에는 테이블 표를 넣는다. 각 월의 1일의 앞 부분 생성을 위..