const str = 'engineer';
console.log(str.length);
// 결과
8
⚠️ 여기서 잠깐!
replace() : 기존의 문자열을 새 문자열로 변경
문자열이 없다면 단독으로 호출 불가.
항상 문자열을 점(.)으로 호출했다.-> 숫자형, 논리형에서는 실행이 안됨.
const str = 'engineer';
// 첫 번째 e만 a로 교체
console.log(str.replace('e', 'a'));
// 모든 n을 M으로 교체
console.log(str.replaceAll('n', 'M'));
// 결과
angineer
eMgiMeer
const str = 'Engineer';
// 모든 알파벳 대문자로
console.log(str.toUpperCase());
// 모든 알파벳 소문자로
console.log(str.toLowerCase());
// 결과
ENGINEER
engineer
const strNum = '0123456789';
const strNumSlice = strNum.slice(3, 6);
console.log(strNumSlice);
// 결과
345
const strWithComma = 'apple,banana,carrot';
console.log(strWithComma.split(','));
// 결과
[ 'apple', 'banana', 'carrot' ]
const str = 'hello'.repeat(3);
console.log(str);
// 결과
hellohellohello
➕ 다양한 문자열 메서드
const str = 'Hello, World!';
const char = str.charAt(7);
console.log(char);
// 결과
W
const str = 'Hello, World! Welcome to the World.';
const searchStr = 'World';
console.log('첫 등장 인덱스:', str.indexOf(searchStr));
console.log('마지막 등장 인덱스:', str.lastIndexOf(searchStr));
// 결과
첫 등장 인덱스: 7
마지막 등장 인덱스: 29
const str = 'Hello World';
console.log(str.startsWith('Hello'));
// 결과
true
const str = 'Hello World';
console.log(str.endsWith('World'));
// 결과
true
const str = 'Hello World';
console.log(str.includes('lo W'));
// 결과
true
const str1 = 'Hello';
const str2 = 'World';
console.log(str1.concat(' ', str2));
console.log(str2.concat(', ', str1));
// 결과
Hello World
World, Hello
const greeting = ' Hello world! ';
console.log(greeting.trim());
// 결과
Hello world!
index of : 배열에서 몇 번째 인덱스인지 알려준다.
메서드 종류가 다양함.
종류가 다양해서 필요할 때마다 찾아야 한다.
MDN : Mozilla Developer Network 에서 검색하기.
개발자들의 표준문서로 꾸준히 업데이트 되고 있음.
다양한 메서드는 표준자바객체 부분에서 확인이 가능함.
const cars = ['BMW', 'Mercedes', 'Audi', 'Porsche'];
const carsToString = cars.toString();
console.log(carsToString);
// 결과
BMW,Mercedes,Audi,Porsche
const mixedArray = [1, null, true, undefined, 3.14];
console.log(mixedArray.toString());
// 결과
1,,true,,3.14
const cars = ['BMW', 'Mercedes', 'Audi', 'Porsche'];
const removedCar = cars.pop();
console.log('삭제 후 배열:', cars);
console.log('삭제된 요소:', removedCar);
// 결과
삭제 후 배열: [ 'BMW', 'Mercedes', 'Audi' ]
삭제된 요소: Porsche
const cars = ['BMW', 'Mercedes', 'Audi', 'Porsche'];
const lengthAfterPush = cars.push('Volkswagen');
console.log('요소 추가 후 배열:', cars);
console.log('요소 추가 후 길이:', lengthAfterPush);
// 결과
요소 추가 후 배열: [ 'BMW', 'Mercedes', 'Audi', 'Porsche', 'Volkswagen' ]
요소 추가 후 길이: 5
const cars = ['BMW', 'Mercedes', 'Audi', 'Porsche'];
const removedCar = cars.shift();
console.log('삭제 후 배열:', cars);
console.log('삭제된 요소:', removedCar);
// 결과
삭제 후 배열: [ 'Mercedes', 'Audi', 'Porsche' ]
삭제된 요소: BMW
const cars = ['BMW', 'Mercedes', 'Audi', 'Porsche'];
const lengthAfterUnshift = cars.unshift('Volkswagen');
console.log('요소 추가 후 배열:', cars);
console.log('요소 추가 후 길이:', lengthAfterUnshift);
// 결과
요소 추가 후 배열: [ 'Volkswagen', 'BMW', 'Mercedes', 'Audi', 'Porsche' ]
요소 추가 후 길이: 5
const cars = ['BMW', 'Mercedes', 'Audi', 'Porsche'];
const slicedCars = cars.slice(1, 3);
console.log(slicedCars);
// 결과
[ 'Mercedes', 'Audi' ]
const arr = ['a', 'b', 1, 1203, 'a'];
console.log('a의 첫 등장 위치:', arr.indexOf('a'));
console.log('2번 인덱스 이후 첫 등장 위치:', arr.indexOf('a', 2));
// 결과
a의 첫 등장 위치: 0
2번 인덱스 이후 첫 등장 위치: 4
➕ 다양한 배열 메서드
const arr = ['a', 'b', 1, 1203, 'a'];
console.log('a의 마지막 등장 위치:',
arr.lastIndexOf('a'));
// 결과
a의 마지막 등장 위치: 4
const arr = [1, 2, 3];
console.log(arr.join());
console.log(arr.join(' - '));
console.log(arr.join(' ~'));
// 결과
1,2,3
1 - 2 - 3
1 ~2 ~3
const arr = [1, 2, 3];
arr.forEach((num) => {
num = num * num + num;
console.log(num);
});
// 결과
2
6
12
const arr = [1, 2, 3];
const result = arr.map((num) => num * num + num);
console.log(result);
// 결과
[ 2, 6, 12 ]
const now = new Date();
console.log(now);
const past = new Date('2000-01-01');
console.log(past);
// 결과
2024-02-08T02:14:01.998Z
2000-01-01T00:00:00.000Z
T는 ‘Time’의 약자로, 날짜와 시간을 구분하는 문자입니다.
Z는 ‘Zulu’의 약자로, 협정 세계시(UTC)를 의미합니다.

// 2024-02-08T02:12:49.000Z
const now = new Date();
console.log(now.getFullYear());
console.log(now.getMonth());
console.log(now.getDate());
console.log(now.getDay());
console.log(now.getHours());
console.log(now.getMinutes());
console.log(now.getSeconds());
// 결과
2024
1
8
4
2
12
49
console.log(Math.ceil(123.45));
// 결과
124
console.log(Math.floor(123.45));
// 결과
123
console.log(Math.round(4.96));
console.log(Math.round(4.1));
// 결과
5
4
console.log(Math.max(9, 1, -9));
console.log(Math.min(9, 1, -9));
// 결과
9
-9
console.log(Math.random());
// 결과
0.14680479561242477
// 1 이상 101 미만의 무작위의 실수 생성
let randomNum = Math.random() * 100 + 1;
console.log(randomNum);
// 정수로 내림해 1 이상 100 이하의 무작위의 정수 생성
randomNum = Math.floor(randomNum);
console.log(randomNum);
// 결과
71.46423588361814
71
➕ 다양한 수학 메서드
console.log(Math.abs(-7));
// 결과
7
console.log(Math.pow(2, 3)); // 2^3
console.log(Math.pow(2, -2)); // 2^(-2) = 1/4
// 결과
8
0.25
console.log(Math.sqrt(16));
// 결과
4
console.log(Math.cbrt(27));
// 결과
3
console.log(Math.sign(-10));
console.log(Math.sign(0));
console.log(Math.sign(-0));
console.log(Math.sign(10));
// 결과
-1
0
-0
1