JavaScript - 간단한 함수들

mia·2022년 11월 17일
0

alert()

알림창을 띄워주는 함수(사용자에게 안내하고 싶은 텍스트를 보여줌)

<script>
	alert("안녕하세요!");
</script>

console.log()

개발자가 확인하고 싶은 내용을 출력하는 함수. 브라우저에 내장된 '개발자 도구'를 통해 콘솔창을 확인 할 수 있다.

<script>
	console.log();
</script>

prompt()

경고창을 띄워 사용자에게 값을 입력할 수 있도록 하는 함수.

<script>
	prompt(설명텍스트);
</script>

addEventListener()

클릭, 스크롤, 터치, resize등의 이벤트가 언제 발생하는지 듣고 있다가, 발생하면 인자로 받은 함수를 실행시켜준다.

<script>
 요소.addEventListener(이벤트종류, function() {
  //이벤트가 일어났을 때 실행할 내용
 })
</script>

toUpperCase(), toLowerCase()

대문자로 변경 또는 소문자로 변경을 해주는 매소드

<script>
	const lastName = "Mia";
    console.log(lastName.toUpperCase()); // MIA
    console.log(lastName.toLowerCase()); // mia
</script>

indexOf()

특정 문자열이 포함되어있는지 확인하고, 만약 있다면 몇 번째 순서에 해당 문자열이 있는지 알려준다.
해당 문자열이 없다면 -1을 반환한다.

startsWith(), endsWith(), includes()

indexOf를 대신해 활용할 수 있는 조금 더 직관적인 메서드들

<script>
  const email = 'jy0384@naver.com';

  console.log(email.startsWith('jy')); // true
  console.log(email.endsWith('kr')); // false
  console.log(email.includes('@')); // true
</script>

repeat()

특정 문자열을 반복하고 싶을 때 사용한다.

<script>
	console.log('mia 귀여워...'.repeat(3)); 
    // mia 귀여워...mia 귀여워...mia 귀여워...
</script>

split()

string객체를 지정한 구분자를 이용하여 여러개의 문자열로 나눈다.

<script>
	const interests = "축구, 야구, 농구"
	console.log(interests.split(',')); // ["축구", "야구", "농구"]
</script>

Number()

string형에서 number형으로 바꿔준다.

parseInt(), parseFloat()

Number()과 같이 string형을 number형으로 바꿔주지만 첫 글자가 숫자로 시작해야하만 값을 줄 수 있다.
parseInt는 정수로 변경해주고, parseFloat는 소수도 가능하다.

max()

입력값으로 받은 0개 이상의 숫자 중 가장 큰 숫자를 반환한다.

toString()

number형을 string형으로 바꿔준다.

Math.round(), Math.ceil(), Math.floor()

round는 반올림, ceil은 올림, floor는 내림 메소드이다.

<script>
	console.log(Math.round(2.5)); // 3
    console.log(Math.round(2.44)); // 2
    console.log(Math.ceil(2.82)); // 3
    console.log(Math.ceil(2.4)); // 3
    console.log(Math.floor(3.5)); // 3
    console.log(Math.floor(2.333)); // 2
</script>

Math.random()

0.000000에서 0.99999999 사이의 값에서 랜덤수를 제공한다. 1은 포함하지 않는다.

<script>
	console.log(Math.floor(Math.random() * 10)) // 1~9까지의 랜덤 수
</script>

😤 날 힘들게 했던 문제
최소(min), 최대값(max)을 받아 그 사이의 랜덤 수를 반환하는 getRandomNumber함수를 구현해주세요.

(가정) min = 2, max = 10, x = Math.random;

  1. max값 구하기
    x * max = 1~9까지의 랜덤 수

  2. min값 구하기
    x + min -> 만약 x가 0이라면 아무리 max값을 곱해도 0이기 때문에 min을 더한다.

  3. 더해보기
    x * max + min -> 최대값이 11이 될 수 있는 문제 발생

  4. min값 빼주기
    x * max + min - min -> 최소값이 다시 0이 될 수 있음

  5. max에 min값을 미리 빼주기
    x * (max - min) + min
    -> 최대값: 7.9999 + 2 = 9.9999 / 최소값: 0.0000 + 2 = 2

  6. floor적용하여 정수로 만들어주기
    -> 최대값이 9라 10으로 만들어주기 위해서는 1을 추가로 더해주어야 한다.

<script>
	function getRandomNumber() {
    	return Math.floor(Math.random() * (max + 1 - min)) + min;
    }
    console.log(getRandomNumber(2,10)); // 2~10의 값이 나온다.
</script>
profile
노 포기 킾고잉

0개의 댓글