[JavaScript]자바스크립트 기초문법5 - [(지수,n진법)표기법, 숫자형 메소드, Math객체]


이번 포스트는 [(지수,n진법)표기법, 숫자형 메소드, Math객체]에 관한 내용입니다.


1️⃣ 숫자 표기법

(1) 지수표기법

  • e를 이용하면 10의 거듭제곱꼴로 나타낼 수 있습니다.
let bigNumber = 3e9;
let floatNumber = 3e-5;

console.log(typeof bigNumber);
console.log(bigNumber);
console.log(floatNumber);
/*-------출력-------*/
number
3000000000
0.00003

(2) n진법

/* 16진법 */
let Hexadecimal1 = 0xff;
let Hexadecimal2 = 0xFF;

/* 8진법 */
let octal = 0o377;

/* 2진법 */
let binary = 0b11111111;

console.log(Hexadecimal1);
console.log(Hexadecimal2);
console.log(octal);
console.log(binary);
/*-------출력-------*/
255
255
255
255




2️⃣ 숫자형 메소드

(1) toFixed 메소드

  • toFixed메소드를 사용하면 소수점자리를 지정해줄 수 있습니다.
  • 하지만 toFixed메소드를 사용하면 문자형(string)이 됩니다.
let Number1 = 3.14;

console.log(Number1.toFixed(6));
console.log(typeof Number1.toFixed(6));
/*-------출력-------*/
3.14
3.140000
string

< (문자형 -> 숫자형) 변환방법 2가지 >

let Number1 = 3.14;

console.log(typeof Number1.toFixed(6));
console.log(typeof Number(Number1.toFixed(6)));  // Number()이용
console.log(typeof +Number1.toFixed(6));        // '+' 이용
/*-------출력-------*/
string
number
number

(2) toString 메소드

  • toString메소드를 이용하면 2 ~ 36 범위내의 진수로 바꿔줍니다.
  • 결과값은 문자형입니다.
let Number1 = 255;

console.log(Number1.toString(8));
console.log(Number1.toString(16));
console.log(Number1.toString(2));
console.log(typeof Number1.toString(2));
/*-------출력-------*/
377
ff
11111111
string




3️⃣ Math객체

(1) 절대값[abs]

console.log(Math.abs(-23));
/*-------출력-------*/
23

(2) 최대값[max], 최소값[min]

/* 최대값 */
console.log(Math.max(3, 1, -3, 7));

/* 최소값 */
console.log(Math.min(3, 1, -3, 7));
/*-------출력-------*/
7
-3

(3) 거듭제곱[pow]

console.log(Math.pow(3, 4));
console.log(3**4);
/*-------출력-------*/
81
81

(4) 제곱근[sqrt]

console.log(Math.sqrt(16));
console.log(Math.sqrt(36));
console.log(Math.sqrt(21));
/*-------출력-------*/
4
6
4.58257569495584

(5) 반올림[round], 올림[ceil], 내림[floor]

/* 반올림 */
console.log(`--반올림--`)
console.log(Math.round(3.49));
console.log(Math.round(3.5));

/* 올림 */
console.log(`--올림--`)
console.log(Math.ceil(3.39));
console.log(Math.ceil(3.8));

/* 내림 */
console.log(`--내림--`)
console.log(Math.floor(3.39));
console.log(Math.floor(3.8));
/*-------출력-------*/
--반올림--
3
4
--올림--
4
4
--내림--
3
3

(5) 그 밖의 Math객체 메소드

그 밖의 메소드 🖛🖛 Mozilla사이트 - Math객체



4️⃣ 문자형 메소드

  • 몇가지 배열 메소드(length, indexOf, slice)문자형에 사용할 수 있습니다.
let tempString = "Hello!";

/* 문자열 길이 */
console.log(`--문자열 길이--`)
console.log(tempString.length);

/* 요소 탐색 */
console.log(`--요소 탐색--`)
console.log(tempString.indexOf('l'));
console.log(tempString.lastIndexOf('l'));

/* 대소문자 변환 */
console.log(`--대소문자 변환--`)
console.log(tempString.toUpperCase());
console.log(tempString.toLowerCase());

/* 양 끝 공백 제거 */
let temptrim2 = "    Hi    ";
console.log(`--양 끝 공백 제거--`)
console.log(temptrim2.trim());

/* 부분 문자열 접근 slice(start, end) */
console.log(`--부분 문자열 접근--`)
console.log(tempString.slice(3));  // index3부터 출력
console.log(tempString.slice(0, 2));  // 2개 출력
console.log(tempString.slice());     // 전부 출력
/*-------출력-------*/
--문자열 길이--
6
--요소 탐색--
2
3
--대소문자 변환--
HELLO!
hello!
--양 끝 공백 제거--
Hi
--부분 문자열 접근--
lo!
He
Hello!




5️⃣ 참조형 복사하기

  • 배열그자체를 변수에 선언해주면 참조형으로 복사됩니다.

(1) 참조형으로 복사된 경우

  • 참조형으로 복사된 경우 같은 배열혹은 객체의 주소를 공유하게 됩니다.

< 배열의 경우 >

let array1 = ['a', 'b', 'c', 'd'];
let array2 = array1;

array2[1] = 'z';
console.log(array2);  // [ 'a', 'z', 'c', 'd' ]
console.log(array1);  // [ 'a', 'z', 'c', 'd' ]

< 객체의 경우 >

let object1 = {
  first: '커피 마시기',
  second: '운동하기'
};

let object2 = object1;
object2.first = '토스트 먹기';
console.log(object2);  // { first: '토스트 먹기', second: '운동하기' }
console.log(object1);  // { first: '토스트 먹기', second: '운동하기' }

(2) for문 이용하여 복사하기(참조형x)

< 배열 복사(단순 for문) >

let array1 = ['a', 'b', 'c', 'd'];
let array2 = [];

for (let i = 0; i < array1.length; i++)
{
  array2[i] = array1[i];
}
array2[1] = 'z';

console.log(array2);  // [ 'a', 'z', 'c', 'd' ]
console.log(array1);  // [ 'a', 'b', 'c', 'd' ]

< 객체 복사(for in문) >

let object1 = {
  first: '커피 마시기',
  second: '운동하기'
};
let object2 = {};

for (let i in object1)
{
  object2[i] = object1[i];
}
object2.first = '토스트 먹기';

console.log(object2);  // { first: '토스트 먹기', second: '운동하기' }
console.log(object1);  // { first: '커피 마시기', second: '운동하기' }

(3) Object.assign메소드 이용하여 복사하기

  • Object.assign메소드를 사용하면 새로운 주소값에 값을 복사해줍니다.
  • 첫번째 요소로 배열[]객체{}을 사용합니다.

< 배열에서 사용 >

let array1 = ['a', 'b', 'c', 'd'];
let array2 = Object.assign([], array1);

array2[1] = 'z';
console.log(array2);  // [ 'a', 'z', 'c', 'd' ]
console.log(array1);  // [ 'a', 'b', 'c', 'd' ]

< 객체에서 사용 >

let object1 = {
  first: '커피 마시기',
  second: '운동하기'
};

let object2 = Object.assign({}, object1);
object2.first = '토스트 먹기';

console.log(object2);  // { first: '토스트 먹기', second: '운동하기' }
console.log(object1);  // { first: '커피 마시기', second: '운동하기' }




< 자바스크립트[JavaScript] 기초문법 포스트 목차 >

1.  자바스크립트 기초문법1 [변수선언, 기본출력, 기본 규칙]
2.  자바스크립트 기초문법2 [자료형, 연산자, 함수선언, 반복문, 조건문]
3.  자바스크립트 기초문법3 [객체(objact)]
4.  자바스크립트 기초문법4 [배열(array)]
>> 자바스크립트 기초문법5 [(지수,n진법)표기법, 숫자형 메소드, Math객체]





© 2021.02. by kirim

Powered by kkrim