본문 바로가기

시작이 반이다/JavaScript

[혼공학습단 7기] 5주차

Intro

마침 이번주에 스카이문 무접점 키보드 교환 맡긴 게 도착해서 써보는데 진짜.....

소리가 나니까 타자가 쳐지고 있구나라고 인식하지만 구름 타법?까진 아니고 손가락이 보강판?바닥에 닿는 느낌이 별로 안들정도로 힘도 별로 안들어가서 오래 타이핑하기 좋겠다고 느꼈음

텐키리스 모델로도 나와주면 좋겠다

타건감 동영상 찍어보려고 했는데 잘 안 찍혀서 ASMR로 듣기 좋은 영상 보세요

그리고 휴대폰

사전판매 첫 날, 갤캠스에서 새벽 2시까지 고전하다가 겨우 샀다

 S22+ purple 

은행 점검시간+ 입구부터 여러 번 튕겼지만 기다린 시간이 아까워서 포기할 수 없었다

사진은 6주차 포스트에 올려둠


기본 미션

객체, 속성, 메소드가 무엇인지 설명하기

이번 6단원의 주제가 객체인만큼 객체지향언어를 공부해 본 사람이라면 좀 더 쉽게 이해할 수 있을 거 같다. 

 

자바스크립트에서는 자료형을 크게 2가지로 구분한다.

 기본 자료형 & 객체 자료형

 

  기본 자료형 객체 자료형
종류 숫자, 문자열, 불(bool) 함수, 배열
자료형 확인 typeof(자료)

 

객체

자바스크립트에서 속성과 메소드를 가질 수 있는 모든 것은 객체이고

여러 가지의 자료형을 묶어서 다루고 싶을 때 우리는 객체를 사용한다.

이전에 배운 배열 역시 객체를 기반으로 한 객체 자료형 중 하나이다.    //typeof(배열) --> "object"

객체 자료형은 new 키워드를 활용해서 생성된다.

 

속성

자바스크립트에서 객체 내부에 있는 값 속성 이라고 한다.

객체의 속성은 모든 형태의 자료형을 가질 수 있다.

 

메소드

자바스크립트에서 객체의 속성 중 함수 자료형인 속성메소드 라고 한다.

메소드 내에서 객체 자신의 속성에 접근하려면 this 키워드를 사용하면 된다.


 

선택 미션

p. 288 확인 문제 3번 풀고, 풀이 과정 설명하기

[3번] : Math 객체와 관련된 내용을 읽고 sin 90° 의 값을 구해보기 ( sin 90°= 1 )

 

문제를 해결하기 전에 읽어야 하는 문서이다.

 

Math - JavaScript | MDN

Math는 수학적인 상수와 함수를 위한 속성과 메서드를 가진 내장 객체입니다. 함수 객체가 아닙니다.

developer.mozilla.org

 

Math는 수학적인 상수와 함수를 위한 속성과 메서드를 가진 내장 객체입니다. 함수 객체가 아닙니다.

위 사이트에서는 Math 객체를 이와 같이 정의하고 있다. 문제 해결에 앞서, 내장 객체에 대해 더 알아보자

표준 내장 객체

: 개발을 좀 더 쉽게 할 수 있도록 JS가 기본적으로 가지고 있는, 따로 선언 없이 사용할 수 있는 객체

e.g. Object, Function, Array, ,String, Boolean, Number, Math, Date, RegExp, ...

 

더 공부해봐야 알겠지만 많은 내장 객체들은 함수이며 인자와 함께 호출될 수 있다고 한다

그 중 일부는 new 연산자와 함께 사용되는 생성자이기도 한다는데

함수 객체는 객체 지향의 생성자 역할을 할 수 있고, 일반 객체를 확장한 객체라고 할 수 있다

이와 달리 Math 객체생성자가 아니며 정적인 속성과 메소드를 가진다

 

더 자세한 내용은 여기를 읽어보면 좋을 거 같다

문제 해결

삼각 함수(sin(), cos(), tan(), asin(), acos(), atan(), atan2()) : 매개변수와 반환값 모두 호도법(Radian)을 사용
라디안 → 각도 변환 : 라디안을 (Math.PI / 180) 나누기
각도 → 라디안 변환 : 각도에 (Math.PI / 180) 곱하기

 

Math의 삼각함수 메소드를 제대로 사용하기 위해서는 Radian 값이 필요하다

  1. 문제에서는 각도 변수가 주어졌으므로 우리는 위에 변환 공식을 이용해 라디안 변수를 생성
  2. 라디안 변수를 사용해 sin 90° 의 값을 계산

 

<script>
    // 각도 변수 선언
    const degree = 90

    // To-Do
    const radian = degree * (Math.PI / 180)
    console.log('sin 90° 의 값은? ', Math.sin(radian))
</script>

 

어제 인공지능 공부하고 쉬던 중 전에 망고보드로 블로그 포스트 썸네일 만들고 싶다고 생각한 게 떠올나서 만들었는데 생각보다 마음에 안들어서 다음에 유튜브로 공부하고 해야지

 

휴대폰 22일이나 23일에 오는데 필름, 케이스 없단 것을 이제 알아차려서 빨리 주문해야겠다

 

 

그만 미뤄어어어어

 

'시작이 반이다 > JavaScript' 카테고리의 다른 글

[혼공학습단 7기] 6주차  (0) 2022.02.26
[혼공학습단 7기] 4주차  (0) 2022.02.04
[혼공학습단 7기] 3주차  (0) 2022.01.27
[혼공학습단 7기] 2주차  (0) 2022.01.23
[혼공학습단 7기] 1주차  (0) 2022.01.16