2 분 소요

위코드 첫 주를 보내면서 js에 대한 많은 문제를 풀고 헷갈렸던 문법에 대해서 정리해 보려고 한다.

1. string ↔ number

String -> number

string 문자열을 number로 변환하는 방법으로는 [Number, parseInt, parseFloat] 가 있다.

  1. Number

let year = "2021";
console.log(Number(year)); -> 숫자로 변환할  있다.

  1. ParseInt - 소수부분은 버린다.
    • parseInt( string, n ) n은 옵션으로 n진법을 나타내며 2~36까지 입력가능하고 입력하지 않으면 10으로 처리한다.
    • parseInt(‘12.68’) -> 12
  2. ParseFloat - 문자열을 실수로 바꾸는 함수

    • 수로 시작할 때 그 수를 실수로 바꿉니다.

    • 띄어 쓰기로 여러 개의 수가 있으면 첫번째 수만 바꿉니다.

    • 공백으로 시작하면 공백은 무시합니다.

    • 수가 아닌 문자로 시작하면 NaN을 반환합니다.

Number -> string

toString()

var numberAsNumber = 1234; 
var numberAsString = numberAsNumber.toString();

’+’ 연산의 특성을 활용하여 아래와 같이 변환도 가능하다.

var numberAsNumber = 1234; 
var numberAsString = 1234 + "";

console.log(numberAsNumber, typeof numberAsNumber); //1234 number
console.log(numberAsString, typeof numberAsString); //1234 string

’-‘ 연산의 특성을 활용하여 아래와 같이 변환도 가능하다.

var numberAsNumber = "1234"; 
var numberAsString = numberAsNumber - 0;

console.log(numberAsNumber, typeof numberAsNumber);//1234 number
console.log(numberAsString, typeof numberAsString);//1234 string

+연산자와 -연산자를 이용해 문자열로 변환할 수 있는 내용을 이번에 처음 알게 되어 정리 해보았습니다.

new Date()

Date 함수를 호출하여 현재 날짜와 시간을 나타내는 문자열을 반환한다.

//Date 객체로 현재 시간을 가져온 후, Date 객체가 갖고 있는 함수로 각 날씨와 시간을 가져
  있습니다.
let rightNow = new Date();  
let year = rightNow.getFullYear();  //Year값을 가져온다
let month = rightNow.getMonth()+1;  //month값을 가져온다
//getMonth()는 하나작은 값을 가져오기 때문에 +1 해준다.

let date = rightNow.getDate();  //date 값을 가져온다
let day = rightNow.getDay();  //day 값을 가져온다. 
let currentHour = rightNow.getHours(); //hour
let currentMin = rightNow.getMinutes(); //minutes

주의할 점은

  • getMonth()는 현재 달보다 1 작은 값을 반환하기 때문에 1을 더해줘야 한다.
  • 시간이 흐른다고 rightNodw에 담긴 값이 변하는게 아니고 코드가 실행되는 순간 현재 시간이 담긴다.

getTime

let rightNow = new Date();
let time = rightNow.getTime();

//time의 값은 1970년 1월 1일을 기준으로 몇 초가 지났는지 알려준다.

Math

[더 많은 자료] :https://developer.mozilla.org/ko/docs/Web/JavaScript/Reference/Global_Objects/Math/

1. Math.random()

  • 랜덤

  • 0보다 크거나 같고 1보다 작은 무작위 숫자를 반환

    Math.random(); // 기본 랜덤 메소드 호출, 0.9569793562433155 (Math.random() * 10).toFixed(); // 0 ~ 10 랜덤 수 리턴(문자열) Math.round((Math.random() * 10)); // 0 ~ 10 랜덤 수 리턴(number)
    

2. Math.round()

  • 소수점 이하 반올림

  • 입력값을 반올림한 수와 가장 가까운 정수 값을 반환합니다.

    Math.round( 20.49); //  20
    Math.round( 20.5 ); //  21
    Math.round( 42   ); //  42
    Math.round(-20.5 ); // -20
    Math.round(-20.51); // -21
    

3. Math.ceil()

  • 소수점 이하 올림

  • 주어진 숫자보다 크거나 같은 숫자 중 가장 작은 숫자를 integer 로 반환합니다.

  Math.ceil(.95);    // 1
  Math.ceil(4);      // 4
  Math.ceil(7.004);  // 8
  Math.ceil(-0.95);  // -0
  Math.ceil(-4);     // -4
  Math.ceil(-7.004); // -7

4. Math.floor()

  • 소수점 이하 버림

  • 주어진 숫자와 같거나 작은 정수 중에서 가장 큰 수를 반환합니다.

    Math.floor( 45.95); //  45
    Math.floor( 45.05); //  45
    Math.floor(  4   ); //   4
    Math.floor(-45.05); // -46
    Math.floor(-45.95); // -46
    

5. Math.abs()

  • 절대값

  • 주어진 숫자의 절대값을 반환합니다. x가 양수이거나 0이라면 x를 리턴하고, x가 음수라면 x의 반대값, 즉 양수를 반환합니다.

    Math.abs('-1');     // 1
    Math.abs(-2);       // 2
    Math.abs(null);     // 0
    Math.abs('');       // 0
    Math.abs([]);       // 0
    Math.abs([2]);      // 2
    Math.abs([1,2]);    // NaN
    Math.abs({});       // NaN
    Math.abs('string'); // NaN
    Math.abs();         // NaN
    

6. Math.min()

  • 가장 작은 값

  • 주어진 숫자들 중 가장 작은 값을 반환합니다.

    var x = 10, y = -20;
    var z = Math.min(x, y);
      
    console.log(z); //-20
    

7. Math.max()

  • 가장 큰 값

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

    Math.max(10, 20);   //  20
    Math.max(-10, -20); // -10
    Math.max(-10, 20);  //  20
    

카테고리:

업데이트:

댓글남기기