이번 포스트에서는 JavaScript의 문자열 처리 메소드인 substring
, 배열 메소드인 join
, 그리고 데이터 타입을 확인하는 typeof
에 대해 자세하게 알아보려 한다.
substring
메소드는 문자열의 일부를 추출하여 새로운 문자열을 반환한다. 이 메소드는 두 개의 인수를 받아서 처리한다: 시작 인덱스와 종료 인덱스. 종료 인덱스를 생략할 경우, 문자열의 끝까지 추출한다.
let str = "Hello, World!";
let subStr1 = str.substring(0, 5); // "Hello"
let subStr2 = str.substring(7); // "World!"
위 예제에서 substring(0, 5)
는 문자열의 0번 인덱스부터 5번 인덱스 전까지의 부분 문자열을 반환하고, substring(7)
는 7번 인덱스부터 문자열의 끝까지 반환한다.
이메일 주소의 도메인 추출:
let email = "user@example.com";
let domain = email.substring(email.indexOf("@") + 1); // "example.com"
URL에서 파일명 추출:
let url = "http://example.com/path/to/file.html";
let fileName = url.substring(url.lastIndexOf("/") + 1); // "file.html"
join
메소드는 배열의 모든 요소를 연결해 하나의 문자열로 만든다. 인수로 전달된 구분자를 사용하여 각 요소를 구분한다.
let fruits = ["apple", "banana", "cherry"];
let fruitString = fruits.join(", "); // "apple, banana, cherry"
위 예제에서 배열 요소들을 콤마와 공백으로 구분하여 하나의 문자열로 변환한다.
CSV 형식 데이터 생성:
let rowData = ["John", "Doe", "30"];
let csvRow = rowData.join(","); // "John,Doe,30"
URL 파라미터 문자열 생성:
let params = ["search=apple", "sort=asc", "page=2"];
let paramString = params.join("&"); // "search=apple&sort=asc&page=2"
문장 생성:
let words = ["JavaScript", "is", "fun"];
let sentence = words.join(" "); // "JavaScript is fun"
typeof
연산자는 변수나 값의 데이터 타입을 문자열로 반환한다.
let name = "Alice";
let age = 30;
let isStudent = true;
console.log(typeof name); // "string"
console.log(typeof age); // "number"
console.log(typeof isStudent); // "boolean"
console.log(typeof undefined); // "undefined"
console.log(typeof null); // "object" (자바스크립트의 버그)
null
값의 타입은 "object"로 반환된다. 이는 자바스크립트의 초기 버그로, 현재까지 수정되지 않고 유지되고 있다.Array.isArray()
를 사용해야 한다.변수 타입 확인:
function checkType(variable) {
if (typeof variable === "string") {
console.log("This is a string.");
} else if (typeof variable === "number") {
console.log("This is a number.");
} else {
console.log("Unknown type.");
}
}
안전한 함수 호출:
function invokeIfFunction(func) {
if (typeof func === "function") {
func();
} else {
console.log("Not a function.");
}
}
객체 속성 검사:
let person = { name: "John", age: 25 };
if (typeof person.age === "number") {
person.age += 1;
}
이번 포스트에서는 자바스크립트의 중요한 메소드와 연산자인 substring
, join
, typeof
에 대해 알아보았다. 문자열의 일부를 추출하는 substring
, 배열을 문자열로 변환하는 join
, 그리고 변수의 타입을 확인하는 typeof
를 잘 활용하면 보다 효율적이고 가독성 높은 코드를 작성할 수 있다.
메소드와 연산자의 특성과 사용법을 익히고 다양한 사례를 통해 실전에 적용해보자. 이를 통해 자바스크립트 코딩 능력을 한 단계 업그레이드할 수 있을 것이라고 생각된다.