JavaScript day9
자바스크립트 내장객체 | Math 객체 | String 객체 |
자바스크립트 내장객체
자바스크립트의 내장 객체는 객체 생성없이 사용 가능한 객체를 의미한다.
Math 객체
수학에서 자주 사용하는 상수와 함수들을 다룰 수 있도록 하였다.
min()
- 최소값을 반환
- 매개변수가 전달되지 않으면 Infitiy를 반환
- 비교할 수 없는 값이 포함되어 있으면 NaN을 반환
max()
- 최대값을 반환
- 매개변수가 전달되지 않으면 -Infitiy를 반환
- 비교할 수 없는 값이 포함되어 있으면 NaN을 반환
round()
- 소수점 첫번째 자리에서 반올림하여 반환
floor()
- 소수점 첫번째 자리에서 내림
ceil()
- 소수점 첫번째 자리에서 올림
random()
- 0보다 크거나 같고 1보다 작은 무작위 소수를 반환
console.log(Math.min()); // Infinity
console.log(Math.min(1,10,-10,100,0)); // -10
console.log(Math.min(1,10,"-10",100,0)); // -10 : 자동형변환
console.log(Math.min(1,10,"마이너스십",100,0)); // NaN
console.log(Math.max()); // -Infinity
console.log(Math.max(1,10,-10,100,0)); // 100
console.log(Math.max(1,10,-10,"100",0)); // 100 : 자동형변환
console.log(Math.max(1,10,"마이너스십",100,0)); // NaN
console.log(Math.round(10.49)); // 10
console.log(Math.round(10.5)); // 11
console.log(Math.round(-10.5)); // -10
console.log(Math.round(-10.51)); // -11
console.log(Math.floor(10.49)); // 10
console.log(Math.floor(10.5)); // 10
console.log(Math.floor(-10.5)); // -11
console.log(Math.floor(-10.51)); // -11
console.log(Math.ceil(10.49)); // 11
console.log(Math.ceil(10.5)); // 11
console.log(Math.ceil(-10.5)); // -10
console.log(Math.ceil(-10.51)); // -10
const rand = Math.random();
console.log(rand); // 0.5082535274834281
console.log(Math.floor(rand*10) +1); // 5 : 1~10사이의 자연수
String 객체
문자열을 쉽게 만들고 다룰 수 있도록한다.
length
- 문자열의 길이를 저장하는 프로퍼티
indexOf()
- 매개변수로 전달된 문자열이 처음 등장하는 위치를 반환
charAt()
- 매개변수로 전달된 인덱스에 위치한 문자를 반환
substring()
- 매개변수로 전달된 시작 인덱스부터 종료 인덱스 바로 앞까지 문자열을 추출
- 매개변수가 1개인 경우 해당 인덱스 끝까지 문자열을 추출
sudstr()
- 매개변수로 전달된 시작 인덱스부터 전달된 갯수만큼 문자열을 추출하여 반환
split()
- 매개변수로 전달된 구분자를 기분으로 문자열을 나눈 후 하나의 배열에 저장
replace()
- 원본 문자열을 매개변수로 전달된 문자열로 치환
trim()
- 문자열의 앞뒤 공백을 제거
rconst str1 = "안녕하세요. javascript";
console.log(str1); // 안녕하세요. javascript
console.log(str1.length); // 17
console.log(str1.indexOf('j')); // 7
console.log(str1.indexOf('J')); // -1 : 찾지못함
console.log(str1.indexOf('a')); // 8
console.log(str1.lastIndexOf('a')); // 10
console.log(str1.charAt('7')); // j -> 7
console.log(str1.includes('java')); // true
console.log(str1.substring('7')); // javascript, 인덱스 7번부터 끝까지
console.log(str1.substring('7,11')); // java, 인덱스 7번부터 11번 앞까지
const str2 = '홍길동😍이순신😍장금이😍장영실';
const student = str2.split('😍');
console.log(student); // (4) ['홍길동', '이순신', '장금이', '장영실'] -> 배열
for(let stu in student){
console.log(stu, student[stu]);
/*
0 홍길동
1 이순신
2 장금이
3 장영실
*/
}
console.log(str1.replace('안녕하세요','Hello')); //Hello. javascript -> 영구적으로 바뀌는것은 아님
console.log(str1.replace('안녕하세요','Hello').charAt('1')); // e
const str3 = ' javascript ';
console.log(`🎃${str3}🎃`); // 🎃 javascript 🎃
console.log(`🎃${str3.trim()}🎃`); // 🎃javascript🎃