29일차 - 2022.03.29
오늘 공부한 내용 요약
this에 대해(1)
-
아무 함수에도 속하지 않은 this는 언제나 window 객체를 참조한다.
stirct 모드에서는 undefined를 참조.
함수에 속해있는 경우 this의 값은 함수를 호출하는 방법에 따라 값이 결정됨 -
함수와 객체의 구분이 명확하지 않은 자바스크립트에서는 this가 둘을 구분하는데 거의 유일한 방법임
-
전역공간에서 this는 전역객체
변수선언 대신에 window의 프로퍼티에 직접 할당해도 선언한것과 동일한 결과 나옴
let a = 1;
window.b = 2;
console.log(a, this.a); // 1 1
console.log(b, this.b); // 2 2
window.a = 1;
console.log(a, this.a, window.a); // 1 1 1
예외로 삭제명령 일때는 다를 수 있음
let a = 1;
delete window.a; // false
console.log(a,this.a); // 1 1
window.a = 1;
delete window.a; // true
console.log(a, this.a); // 오류
메서드, 객체, 프로퍼티 개념 다시 이해
-
함수와 메서드 둘다 정의된 동작을 수행하는 것 / 차이는 독립성
함수는 독립성이 있고 메서드는 호출한 대상 객체의 동작을 수행함. -
메서드는 객체의 프로퍼티에 할당된 함수 x
함수를 객체의 프로퍼티에 할당하는 것뿐 아니라 객체의 메서드로서 호출할 경우에만 동작한다.
그렇지 않으면 함수로 동작함 -
함수로서 호출과 메서드로서의 호출은 간단히 함수앞에 점이 있는지 여부로 구분이 가능
-
객체는 참조형데이터 타입으로 배열, 함수,날짜,객체, map, set 등으로 숫자형, 문자형, null, undefined 등의 원시형 데이터 아님
-
객체는 여러속성을 하나의 변수에 저장할 수 있도록 해주는 데이터 타입
객체에서 명명된 값을 프로퍼티라고 함
-
객체는 키와 값으로 구성된 프로퍼티들의 집합.
-
프로퍼티의 값으로 자바스크립트에서 사용할 수 있는 모든 값을 사용가능
-
프로퍼티 값이 함수일 경우, 일반 함수와 구분하기 위해 메서드라 부름
Baekjoon에서 문제풀이
문제 : 두 정수 A와 B를 입력받은 후 A+B를 출력하는 프로그램을 작성해보자.
첫째 줄에 A와 B가 주어진다. (0 < A, B < 10)
풀이
A = Math.floor(Number(A));
B = Math.floor(Number(B));
처럼 숫자형으로 바꾸고 소수점을 버려 정수로 만들려했었는데 다른 쓸만한 함수가 있을까 찾아보던 중
parseInt라는 Number처럼 숫자형으로 바꿔주지만 문자열이 포함된 경우에도 숫자까지만을 반환해주는 더 좋아보이는 함수를 찾아 적용해보았으나 아직 답 찾지못함.
(0 < A, B < 10)의 조건을 추가하는 방식 고민중
공부 출처
코어 자바스크립트 -정재남- 지음
BaekJoon
내일 학습 예정
- 백준
- this(2)
위의 내용은 공부중 본인이 이해한 내용으로 몇몇 틀린 내용이 있을 수 있습니다.
회독중 발견시 수정하겠습니다
Author And Source
이 문제에 관하여(29일차 - 2022.03.29), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@abo7326/29일차-2022.03.29저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)