본문 바로가기
FRONT-END/JavaScript

[JS] 1001 - 1013

by codechu 2025. 10. 1.

- map  : 기존 배열을 기반으로, 각 요소에 어떤 작업을 수행해서 새로운 배열을 만들어 내는 함수

 

  • map()은 원본 배열은 건드리지 않고,
  • **각 요소를 변환(transform)**해서
  • 같은 길이의 새로운 배열을 리턴합니다.
const numbers = [1, 2, 3, 4];

const doubled = numbers.map((n) => n * 2);

console.log(doubled); // [2, 4, 6, 8]
console.log(numbers); // [1, 2, 3, 4]  ← 원본 배열은 그대로

 

 

 

 

익명함수

  • 이름이 없는 함수로, 단독 사용이 불가하며 주로 생성 후 변수나 상수에 할당하거나, 다른 함수의 호출시 인자로 활용한다.
function ([매개변수 ,...]) }
[구현부]
}

 

화살표 함수

  • 화살표 함수 ( Arrow Function ) 는 함수의 일종으로 이름이 없고, 변수나 상수에 할당하거나, 다른 함수의 호출시 인자로 활용할 수 있다.
([매개변수 ,...]) => {
[구현부]
}
매개 변수가 하나만 존재하는 경우, 매개 변수를 위한 괄호를 생략할 수 있다.

 

const f = (x) => {
return x ** 2 ;
}

const f = x =>{
return x **2
}

구현부가 하나의 구문으로 이루어진 경우 중괄호 ([,] )를 생략할 수 있는데, 이때 해당 구문의 실행 결과는 반환(return) 됨으로 return 키워드 또한 생략한다.

const f = (a,b) => {
return a**b
};

{ 구현부 }  부분에 구문이 하나이고 그 구문이 return  이면 생략이 가능해  밑에 처럼 작성 가능하다

const f = (a,b) => a**b

 

 

요소

 

window

  • window 객체는 자바스크립트의 최상위 객체이면서 브라우저와 관련된 HTML 문서 및 이를 초월하는 멤버를 모두 가지고 있다.
  • 전역적으로 사용할 수 있는 대상이 모두 window 객체의 멤버로 할당되어 있다.

 

document

  • window 의 멤버로 HTML 문서 <html>부터 </html> 까지에 대한 멤버를 가지는 객체이다.
  • 속성
    • head : <head>태그에 대한 멤버를 가지는 객체이다.
    • body : <body>태그에 대한 멤버를 가지는 객체이다.
  • 함수
    • createElement(x) :  태그의 종류가 x 인 가상의 요소를 만들어 반환한다.
    • getElementaById(x) : html, id 속성 값으로 문자열인 x 를 가지는 요소를 선택해 반환한다. 그러한 요소가 없다면 null을 반환한다.

 

 HTML Element

  •  HTML Element 는 HTML 의 모든 태그를 자바스크립트 객체로 표현하기 위한 타입니다.
  • 객체속성 -> (속성은 함수와 달리 호출방법이 간단 .만 찍으면 됨 ()불필요)
    • classList : 해당 요소의 html <class> 속성과 관련된 멤버를 가지고 있는 속성이다. 
      • add(x) : 해당 요소의 class 속성에 x 를 추가한다. 이미 있다면 중복되기 추가하지는 않으며, 공백을 추가하는 등 다른 클래스와의 분리는 자동으로 이루어진다.
      • remove(x) : 해당 요소의 class 속성에서 x 를 제거한다.
      • toggle(x) : 해당 요소의 class 속성에서 x 를 가지고 있다면 제거하고, 없다면 추가한다.
      • contains(x) : 해당 요소의 class 속성이 x 를 가지고 있는가의 여부를 반환한다.
    • dateset :  해당 요소의 사용자 지정 데이터를 가져오거나 지정하기 위한 속성이다. 오브젝트 속성 접근 연산자 ( [ ] ) 를 활용하여 해당 요소가 가지고 있는 date - * 속성의 이름으로 값에 접근할 수 있다. 단, 접근시 이름을 카멜 케이스화 하여야 함에 유의한다. ( 가령, HTML 상 그 속성 이름이 data-member-name 인 대상에 접근하고자 한다면 dataset['memberName'] 으로 접근 )
    • innerHTML : 해당 요소의 내부HTML 코드인 문자열이다.
    • innerText : 해당 요소의 내부 텍스트 내용인 문자열이다.
    • style : 속성이 부여된다.
      • 해당  속성의 멤버의 명명은 실제  CSS 속성을 카멜 케이스화 한 것임에 유의한다. ( 가령 , background-color 는 backgoundColo 로 사용 )
      •  부여한 css 속성을  삭제하고자 한다면 해당 속성 값을 빈 문자열로 지정한다.

  • 객체 함수
    • addEventListenner (e,f) : 호출 대상인 요소에 이벤트 'e' 가 발생하였을 때 함수 f 를 실행하기 위한 이벤트 리스너를 추가한다.
    • removeEventListenner(e,f) : 호출 대상인 요소가 가지고 있는 이벤트 리스너 중 이벤트의 종류가  e 이고 함수가 f 인 이벤트 리스너를 제거한다. 여기서 제거할 함수 f  는 이벤트 리스너 추가 시 사용한 함수와 동일한 대상이어야 한다.
    • append(...x) : 호출 대상인 요소의 마지막 자식이 될 수 있도록 한 개 이상의 요소  x 를 추가한다.
    • prepend(...x): 호출 대상인 요소의 첫번째 자식이 될 수 있도록 한 개 이상의 요소 x 를 추가한다. 
    • insertAdjacentElement(p,x) :호출 대상인 요소에 대해 지정한 포지션 p에 맞게 요소 x 를 배치한다.
      • beforebegin : 요소가 열리기 전 ( 요소의 선행 )
      • afterbegin : 요소가 열리고 난 뒤 ( 요소의 첫번째 자식 )
      • beforeend: 요소가 닫히기 전 ( 요소의 마지막 자식)
      • afterend: 요소가 닫히고 난 뒤 ( 요소의 인접 후행 )
 <div id="container">
<p class="text">첫 번째</p>
<p class="text">두 번째</p>
</div>

<script>
const container = document.getElementById("container");
const firstText = container.querySelector(".text");
console.log(firstText.textContent); // "첫 번째"

</script>
  • querySelector(x) : 호출 대상이 되는 요소의 자식 혹은 자손이면서 css 선택자인 문자열 x를 가장 빨리 만족하는 요소 한 개를 반환한다. 그러한 요소가 없다면 null 을 반환한다.
  • querySelectorAll(x): 호출 대상이 되는 요소의 자식 혹은 자손이면서 css 선택자인 문자열 x 를 만족하는 요소 전체를 인자로 가지는 유사 배열 객체 NodeList를 반환한다. 그러한 요소가 없 다면 길이가 0인 유사 배열 객체 NodeList를 반환한다.
  • getAttribute(x) : 호출 대상이 되는 요소가 가지고 있는 HTML 속성 중 이름이 x 인 것의 값을 문자열로 반환한다. 그러한 속성이 없다면 null을 반환한다.
  • setAttribute(n,v) : 호출 대상이 되는 요소에 이름은 n 이고 값은 v 인 속성을 추가/ 지정한다. 속성 값이 없는 속성을 추가한다 하더라도, v 는 누락하여서는 안 되며 빈 문자열( '  ' )을 전달한다. 
  • hasAttribute(x) :  호출 대상이 되는 요소가 이름이 x인 속성을 가지고 있는 가의 여부를 반환한다.
  • removeAttribute(x) : 호출 대상이 가지고 있는 속성 중 이름이  x 인 속성을 제거한다.
<button id="btn">눌러봐</button>
<script>
  const btn = document.getElementById("btn");

  function handleClick() {
    alert("버튼 클릭됨!");
  }

  btn.addEventListener("click", handleClick);
</script>
  •  이벤트
    • click : 클릭했을때의 이벤트(마우드 다운보다 살짝 늦음)
    • mousedown :  마우스 버튼을 눌렀을때의 이벤트 (누르자마자)
    • mouseup :마우스 버튼을 뗐을때의 이벤트
    • mouseenter:  마우스 커서가 해당 요소의 밖에 있다가 내부로 진입했을 때의 이벤트
    • mouseleave : 마우스 커서가 해당 요소의 안에 있다가 외부로 빠져 나갔을때의 이벤트.
    • mousemove : 마우스 커서가 해당 요소의 위에서 움직일때의 이벤트
    • wheel : 마우스 휠이돌아갔을 때의 이벤트
    • focusin : 포커스를 가질 수 있는 요소(div 는 안됨 버튼, 인풋 등  가질 수 있는  or tabindex를 주면 가질 수 있음 div 라도)가 포커스를 가지게 되었을 때의 이벤트
    • focusout : 포커스를 가질수 있는 요소가 포커스를 잃었을 때의 이벤트.
    • keydown :  포커스를 가질 수 있는 요소가 포커스를 가지고 있고 키보드의 키가 눌렸을때의 이벤트
    • keyup :  포커스를 가질 수 있는 요소가 포커스를 가지고 있고 키보드의 키가 떼졌을때의 이벤트
    • change : input, select 혹은 textarea 태그의 내용이나 상태(체크 등) 사용자에 의해 변경되었을때 발생하는 이벤트
    • input :  input, select 혹은 textarea 태그의 내용이나 상태(체크 등) 사용자에 의해 변경되었을때 발생하는 이벤트
  • 기타 함수
    • alert(x) : 문자열인 x 를 내용으로 가지는 메세지를 출력한다.
    • confirm(x) : 문자열인 x 를 내용을 가지는 메세지를 출력한다. 단 확인과 취소버튼을 가지며, 확인( 긍정 ) 버튼을 클릭할 경우 해당 함수의 호출 결과로 참 (true) 취소(부정)버튼을 클릭할 경우 해당 함수의 호출 결과롸 거짓(false)이 반환된다.
    • isNan(x) : 숫자인 x 가 NaN 인가의 여부를 반환한다.(NaN 간의 동등, 일치 연산 ( NaN === NaN )은 false 를 반환함으로 isNan을 사용한다.
    • setInterval(f,m) : 숫자인 m 밀리초마다 함수 f 를 실행한다. 해당 인터벌의 식별자인 숫자를 호출 결과로 반환한다.
    • setTimeout(f,m) : 숫자인 m 밀리초 후에 함수 f 를 1회 실행한다. 해당 타임아웃의 식별자인 숫자를 호출 결과로 반환한다.
      • 더보기
        const intervalId = setInterval(() => {
          console.log("1초마다 실행됩니다"); // 여기까지가  f 함수 
        }, 1000); //m 몇초마다 실행할지 숫자
        const timeoutId = setTimeout(() => {
          console.log("3초 후에 한 번 실행됩니다");
        }, 3000);
    •  
    • crearInterval(x) : setInterval 함수 호출 결과로 반환된 식별자를 x로 전달해 반복을 해제한다.
    • creatTimeout(x) : setTimeout 함수 호출 결과로 반환된 식별자를 x 로 전달해 예약을 해제한다.
    • parseInt(s) : 문자열인 s  를 정수인 숫자로 변환해 반환한다. 인식되는 소수점은 모두버려지며, 숫자로 변환할 수 없을 때에는 NaN을 반환한다.

String

  • String은 자바스크립트에서 문자열을 표현하기 위한 타입이다.
  • 객체 속성
    • length : 문자열의 길이
  • 객체 메서드
    • at(i) : 문자열이 가지고 있는 인덱스가 x 인 문자열을 반환한다. // const string = 'hello' string.at(1) = e
    • concat(x) : 호출 대상인 문자열과 문자열인 인자 x 를 이어붙인 새로운 문자열을 반환한다. a.concat(b)
    • include(x) : 호출 대상인 문자열의 내용이 문자열인 인자 x 를 포함하는가의 여부를 반환한다. 'hello'.inclued('hell') // 물론 변수도 사용 가능
    • startsWith(x) : 호출 대상인 문자열이 문자열인 인자  x 로 시작하는가의 여부를 반환한다.
    • endsWith(x) : 호출 대상인 문자열이 문자열인 인자 x 로 끝나는가의 여부를 반환한다.
    • padEnd(n,s) : 호출 대상인 문자열의 길이가 n 자 이하일때 n 자기가 될 수 있도록 부족한 만큼 문자열  s를 문자열 끝에 추가한다. // 시간을 표시할때 9 -> 09로 문자열로 
    • padStart(n,s) :  호출 대상인 문자열의 길이가 n 자 이하일때 n 자기가 될 수 있도록 부족한 만큼 문자열  s를 문자열 앞에 추가한다.
    • 더보기
      [9,37,6].map((v) => v + '')  // v + '' = > 문자열로 변환하는 식 , .map은 새로운 배열로 변환( 기존 숫자 배열은 파괴 x ) 
      [9,37,6].map((v) => v + '') = > v.padStart(2,0) 자릿수가 2자리가 아니면 앞에 0을 붙여라
    • repeat(t) : 호출 대상인 문자열을 인자 t 번 만큼 반복할 문자열을 반환한다.
    • replaceAll(f,t) : 호출 대상인 문자열에서 문자열 혹은 정규표현식인 f 를 찾아 문자열인 t 로 치환한다.
    • 더보기
      const str = "apple banana apple";
      const result = str.replaceAll("apple", "orange");
      console.log(result); // "orange banana orange"
    • 더보기
      const str = "a1 b2 c3";
      const result = str.replaceAll(/\d/g, "*");
      console.log(result); // "a* b* c*"
      /\d/g는 숫자 하나를 의미하는 정규표현식이고 g는 전체(global) 검색을 의미해요

      🧠1. str = "a1 b2 c3"

      • 이건 그냥 문자열이에요.
      • 안에 숫자들이 포함되어 있죠: 1, 2, 3

      🧠 2. /\d/g — 정규표현식

      • /.../는 정규표현식(패턴)을 나타내는 문법
      • \d는 숫자 하나를 의미해요 (0~9)
      • g는 global, 즉 전체 문자열에서 모든 숫자를 찾으라는 뜻

      🧠 3. replaceAll(/\d/g, "*")

      • 문자열에서 모든 숫자를 찾아서 "*"로 바꿔라!
      • "a1 b2 c3" → "a* b* c*"
    •  slice(...)
      • slice() : 호출 대상인 문자열이 가지고 있는 내용을 그대로 가지는 문자열을 복사해 반환한다.
      • slice(f): 호출 대상인 문자열이 가지고 있는 내용 중 인덱스가 f 이상인 문자열을 가지는 문자열을 복사해 반환한다.
      • slice(f,t) : 호출 대상인 문자열이 가지고 있는 내용 중 인덱스가  f이상 t 미만인 문자열을 내용으로 가지는 문자열을 복사해 반환한다.
    • subString(f,t) : 호출 대상인 문자열이 가지고 있는 내용 중 인덱스가 f 이상 t 미만인 문자열을 내용으로 가지는 문자열을 복사해 반환한다. ( 섭스트링은 오류를 알아서 치환해서 값을 찾아줌 ) // 내용찾는건 섭스트링 사용 권장.
    • toLowerCase() : 호출 대상인 문자열이 가지고 있는 내용 중 인식 가능한 라틴 문자를 소문자화한 새로운 문자열을 반환한다.
    • toUpperCase() : 호출 대상인 문자열이 가지고 있는 내용 중 인식 가능한 라틴 문자를 대문자화한 새로운 문자열을 반환한다.
    • trim() : 호출 대상인 문자열이 가지고 있는 내용 중 시작과 끝의 연속되는 공백을 모두 제거해 반환한다.
    • trimStart() :  호출 대상인 문자열이 가지고 있는 내용 중 시작점의 연속되는 공백을 모두 제거해 반환한다.
    • trimEnd() :  호출 대상인 문자열이 가지고 있는 내용 중 끝점의 연속되는 공백을 모두 제거해 반환한다.
    • 더보기
      let input = "   홍길동   ";

      let clean = input.trim();        // "홍길동"
      let leftOnly = input.trimStart(); // "홍길동   "
      let rightOnly = input.trimEnd();  // "   홍길동"

Math

  • Math 클래스는 주로 수학과 관련된 멤버를 포함하는 유틸리티 클래스이다
  • 정적 속성
    • E : 오일러 상수. 약  2.718
    • LN2 : 2의 자연로그. 약 0.693
    • LOG2E : 밑이 2인 로그 E 약 1.443
    • LOG10E : 밑이 10인 로그 E 약 0.434
    • PI : 원주율 약 3.141
    • SQRT1_2 : 0/5( 2분의 1) 의 제곱근 약 0.707
    • SQRT2 : 2의 제곱근 약 1.414 
  • 정적함수
    • abs(x) : 숫자인 x의 절댓값을 반환한다.
    • acos(x) : 숫자인 x 의 아크코사인 값을 반환한다.
    • acosh(x) : 숫자인 x 의 아크사인 값을 반환한다.
    • asinh(x) : 숫자인  x 의 쌍곡 아크사인 값을 반환한다.
    • atanh(x) : 숫자인 x 의 쌍곡 아크틴젠트 값을 반환한다.
    • atan2(x,y) : 인수 몫의 아크틴젠트 값을반환한다.
    • cbrt(x) : 숫자인 x 의 세제곱근을 반환한다. ( 큐브루트 )
    • 더보기
      Math.cbrt(8);     // 2   → 2 × 2 × 2 = 8
      Math.cbrt(27);    // 3   → 3 × 3 × 3 = 27
      Math.cbrt(-64);   // -4  → -4 × -4 × -4 = -64
      Math.cbrt(0);     // 0 
    • sqrt(x) : 숫자인 x 의 제곱근을 반환한다
    • ceil(x) : 숫자인 x 를 정수부까지 올림하여 반환한다.
    • floor(x) : 숫자인 x 를 정수부까지 내림하여 반환한다.
    • tranc (x) : 숫자인 x 의 소수부를 버리고 반환한다.
    • 더보기
      Math.floor(3.9);   // 3
      Math.trunc(3.9);   // 3
      ------음수일때 값이 달라지는 차이가 있다-------
      Math.floor(-3.9);  // -4
      Math.trunc(-3.9);  // -3
    • log(x) :  숫자인x의 자연로그 값을 반환한다.
    • log10(x) : 숫자인 x의 밑이 10인 로그 값을 반환한다.
    • log2(x) : 숫자인 x 의 밑이 2인 로그 값을 반환한다.
    • Math.max(...n) : 숫자를 인자로 가지는 가변인자 n중 가장 큰 값을 반환한다.
    • Math.min(...n) : 숫자를 인자로 가지는 가변인자 n중 가장 큰 작은 값을 반환한다.
    • Math.sigh(x) : 숫자인 x 의 부호를 반환한다. 양수인 경우 1 , 음수인 경우 -1 , 0인 경우 0 그 외의 경우 NaN을 반환한다.

Number

  • Number 클래스는 자바스크립스의 숫자 타입이기도 하고, 숫자와 관련된 유틸리비 멤버를 제공하기도 한다.
  • 정적 속성
    • MAX_SAFE_INTEGER : 자바스크립트에서 표현 가능한 안전한 최대 정수()
    • MIN_SAFE_INTEGER : 자바스크립트에서 표현 가능한 안전한 최소 정수 ()
    • MAX_VALUE : 자바스크립트에서 표현 가능한 가장 큰 수
    • MIN_VALUE : 자바스크립트에서 표현 가능한 가장 작은 양수
    • NaN : 숫자가 아닌 값(Not a Number)
    • POSTIVE_INFINIITY : 양의 무한대
    • NEGATIVE_INFINITIY : 음의 무한대
  • 정적 함수
    • isNaN(x) : 전달된 값 x 가 NaN 인가의 여부를 반환한다. (window.isnan 함수와 다름)
    • isFinite(x) : 전달된 숫자 x가 유한한지의 여부를 반환한다. (window.isFinite 함수와 다름)
    • isInteger(x) : 전달된 숫자 x 가 정수인지의 여부를 반환한다.
    • isSafeInteger(x) : 전달된 숫자 x 가 안전한 정수 (Number.MIN_SAFE_INTEGER 이상이고 Number.MAX_SAFE_INTEGER 이하 ) 인지의 여부를 반환한다.
    • parseFloat(x) : 전달된 값 x를 실수로 변환하여 반환한다. 변환할 수 없을 경우  NaN을 반환한다.( window.parseFloat과 동일한 함수)
    • parseInt(...) : 
      • parseInt(x) : 전달된 값 x를 정수로 변환해 반환한다. 변환할 수 없을 경우 NaN을 반환한다. ( window.parseInt과 동일한 함수)
      • parseInt(x,r) : 전달된 값x 를 r 진법으로 인식하여 10진수인 정수로 변환해 반환한다. 변환할 수 없을 경우 NaN을 반환한다(window.parseInt과 동일한 함수)
  • 객체 함수 
    • toFixed(d) : 전달된 자연수 d를 자리수로 가지는 고정 소수점 표기법으로 포현한 문자열을 반환한다
    • 더보기
      let num = 3.14159;

      num.toFixed(2); // "3.14"
      num.toFixed(0); // "3"
      num.toFixed(4); // "3.1416" (반올림됨) 주의점 자동을 반올림 함.
    • toLocalIsString(...)
      • toLocalIsString() : 호출 대상이 가지고 있는 값을 현재 브라우저를 구동 중인 운영체제의 언어 설정에 맞게 포맷한 문자열을 반환한다.
      • 더보기
        let num = 1234567.89;

        console.log(num.toLocaleString()); 
        // 예: "1,234,567.89" (en-US 기준)
        // 예: "1.234.567,89" (de-DE 기준)
      • toLocalIsString(c) : 호출 대상이 가지고 있는 값을 전달 받은 로케일 코드 c 에 맞게 포맷한 문자열을 반환한다.
    • toString(...)
      • toString(): 호출 대상이 가지고 있는 값을 문자열로 그대로 반환한다. 별도의 조치를 취하지 않는다.
      • toString(r) : 호출 대상이 가지고 있는 10진법 값을 전달 받은 자연수( 2 이상 36 이하 // 2진법 ~ 36진법까지 ) 인 r 진법의 문자열로 변환해 반환한다.

date

  • date 클래스는 자바스크립트에서 날짜와 시간을 다루기 위해 사용하는 타입니다.
  • 객체함수
    • getFullYesr(): 호출 대상이 가지고 있는 일시의 연도를 반환한다
    • getMonth(): 호출 대상이 가지고 있는 일시의 월을 0이상 11이하의 숫자로   반환한다. 이때,0을 1월이라고 한다.
    • getDate():호출 대상이 가지고 있는 일시의 일을 반한한다.
    • getDay(): 호출 대상이 가지고 있는 일시의 요일을 0이상 6이하의 숫자로 반환한다. 이때 0을 월요일이라고 한다.
    • getHours(): 호출 대상이 가지고 있는 일시의 시를 24시제인 0이상 23 이하의 숫자로 반환한다.
    • getMinutes(): 호출 대상이 가지고 있는 일시의 분을 숫자로 반환한다
    • getSeconds(): 호출 대상이 가지고 있는 일시의 초를 숫자로 반환한다.
    • getTime(): 호출 대상이 가지고 있는 일시를 unix 타입인 숫자로 반환한다.

localStorage

  • localStorage는 자바스크립트에서 로컬 브라우저에 저장되는 소규모의 데이터에 접근하기 위해 사용하는 Storage 타입의 객체이다.
  • 객체함수
    • getItem(x) : 키가 x 인 문자열을 반환한다. 그러한 키를 가지는 항목이 없다면 null을 반환한다.
    •  setItem(x,y):   키가 x 값이 문자열 y 인 쌍을 반환한다.
    • removeItem(x) : 키가 x 인 쌍을 제거한다
    • clear(): 모든 키와 값 쌍을 제거한다

 

HTMLInputElement

  • HTMLInputElement는 HTMLElement 타입을 상속 받는 input 태그를 자바스크립트 객체로 표현하기 위한 타입이다.
  • 객체 속성
    • disabled : 해당 요소가 비활성화되어 있는지의 여부를 가지고 오거나 지정한다.
    • value : 해당 요소가 가지고 있는 값을 가지고 오거나 지정한다.
    • checked : 해당 요소가 가지고 있는 값을 가지고 오거나 지정한다.
    • focus() : 해당 요소가 포커스를 가지게 한다.
    • select(): 해당 요소가 가지고 있는 텍스트인 내용을 모두 선택한다.
<input id="study" name="sometext" type="text">
<script>
    const $study = document.getElementById('study')
    console.log($study)
</script>

 

 

HTMLSelectElement

  • HTMLSelectElement 는 HTMLElement 타입을 상속 받는 select 태그를 자바스크립트 객체로 표현하기 위한 타입이다.
    • 객체 속성
      • disabled : 해당 요소가 비활성화되어 있는지의 여부를 가지고 오거나 지정한다.
      • value : 해당 요소가 가지고 있는 값을 가지고 오거나 지정한다.
      • checked : 해당 요소가 가지고 있는 값을 가지고 오거나 지정한다.
      • focus() : 해당 요소가 포커스를 가지게 한다.

HTMLTextAreaElement

  • HTMLTextAreaElement 는 HTMLElement 타입을 상속 받는 TextArea 태그를 자바스크립트 객체로 표현하기 위한 타입이다.
    • 객체 속성
      • disabled : 해당 요소가 비활성화되어 있는지의 여부를 가지고 오거나 지정한다.
      • value : 해당 요소가 가지고 있는 값을 가지고 오거나 지정한다.
      • checked : 해당 요소가 가지고 있는 값을 가지고 오거나 지정한다.
      • focus() : 해당 요소가 포커스를 가지게 한다.

 


<div id="value"></div>
<script>
    //$value 디브 태그의 이름.
    //id="value"를 찾아서 가져옴.
    const $value = document.getElementById('value')
    const maxValue= 10;
    const minValue= -10;
    
    let value = 0;
    // 화면에 보이는 숫자
    $value.innerText = value;
    $value.addEventListener('wheel', (e)=>{
        if (e.deltaY < 0 && value < maxValue) {
            value += 1;
            console.log(e);

    } else if
        // 휠을 아래로 굴렸을 때
        (e.deltaY > 0 && value > minValue) {
            value -= 1;
            console.log('휠을 아래로 굴림');
        }

    $value.innerText = value;
    });
    </script>

 


문제 

function customRound(num,digit) {
const factor = 10 ** digit; // 입력받은 숫자만큼 거듭제곱을 한다
//digit : 2 = 10 ** 2 : 100
num *= factor;
// num : 3.141592 
// num *= factor
//num *= 100 : 3.141592
num =Math.round(num) // round 는 정수만 반환
//num = 314
num/=factor
//314/100 = 3.14
return num; }


---------------------

** 은 거듭제곱을 뜻함

 


객체함수 - toString (r) r = 진법 

 

let num = 255;
console.log(num.toString(36)); // "73"

----------------------------------------
255,36 진법으로 변환 방법
1.255 ÷ 36 = 7 (몫), 나머지 = 3 → "3"
2.7 ÷ 36 = 0 (몫), 나머지 = 7 → "7"
결과: "73" (앞에서부터 나머지를 이어붙임)

왜 앞에서부터 ? ->진법 변환은 항상 가장 낮은 자리수부터 나머지를 구하기 때문.
그래서 나중에 나온 나머지가 앞자리가 된다.

 


객체함수 vs 정적함수

 

 

  • 객체가 가진 기능을 수행하는 함수
  • 객체가 있어야 호출 가능
let str = "hello";
str.toUpperCase(); // "HELLO" → 문자열 객체의 함수

 

 

정적 함수란

  • 클래스나 내장 객체에 직접 붙어 있는 함수
  • 객체를 만들지 않아도 바로 호출 가능
Math.abs(-5); // 5 → Math 객체의 정적 함수
Number.isNaN("abc"); // false → Number 객체의 정적 함수

'FRONT-END > JavaScript' 카테고리의 다른 글

[JS] 0930  (0) 2025.09.30
[JS] 0929 수업 13일차  (0) 2025.09.29