728x90
반응형
문자열 여러 줄
백슬래시(`)로 감싸 여러 줄을 입력하거나 \n으로 줄바꿈을 할 수 있다.
let desc = `오늘은 맑고 화창한
날씨가 계속 되겠습니다.
내일은 비소식이 있습니다.`;
let desc = '오늘은 맑고 화창한\n날씨가 계속 되겠습니다.';
let desc = '오늘은 맑고 화창한 // error!
날씨가 되겠습니다.
내일은 비소식이 있습니다.';
특정 위치에 접근
let desc = '안녕하세요.';
desc[2] // '하'
desc[4] = '용';
console.log(desc); // 안녕하세요.
한 글자만 바꾸는 것은 허용되지 않는다.
문자열 길이 : str.length
let desc = '안녕하세요.';
desc.length // 6
검색 : str.indexOf(text), str.lastIndexOf(text)
없으면 -1 반환
let desc = "Hi guys. Nice to meet you.";
desc.indexOf('to'); // 14
desc.indexOf('o'); // 15
desc.lastIndexOf('o'); // 23
desc.indexOf('man'); // -1
if(desc.indexOf('Hi')){
console.log('Hi가 포함된 문장입니다.');
}
대소문자 변환 : str.toUpperCase(), str.toLowerCase()
let desc = "Hi guys. Nice to meet you.";
desc.toUpperCase(); // "HI GUYS. NICE TO MEET YOU."
desc.toLowerCase(); // "hi guys. nice to meet you."
치환 : str.replace(t1, t2), str.replaceAll(t1, t2)
(str.replaceAll은 ES2021에 추가된 기능)
t1은 바꿀 대상, t2는 치환자
replace는 첫 번째 문자만 바꿔주는데 replaceAll은 모든 문자열에 적용된다.
replace를 모든 문자열에 적용하려면 정규 표현식을 사용해야한다.
const str = "Hello World";
console.log(str.replace("l", "~")); // He~lo World
console.log(str.replaceAll("l", "~")); // He~~o Wor~d
console.log(str.replace(/l/g, "~")); // He~~o Wor~d
추출 : str.slice(n, m)
n : 시작점
m : 없으면 문자열 끝까지 / 양수는 그 숫자까지(포함하지 않음) / 음수는 끝에서부터 셈
let desc = "abcdefg";
desc.slice(2) // "cdefg"
desc.slice(0, 5) // "abcde"
desc.slice(2, -2) // "cde"
추출 : str.substring(n, m)
n과 m 사이 문자열 반환. n 인덱스 이상, m 인덱스 미만
let desc = "abcdefg";
desc.substring(2, 5); // "cde"
desc.substring(5, 2); // "cde"
추출 : str.substr(n, m)
n은 시작 인덱스, m은 자를 문자열 개수
let desc = "abcdefg";
desc.substr(2, 4) // "cdef"
desc.substr(-4, 2) // "de"
앞 뒤 공백 제거 : str.trim()
let desc = " coding ";
desc.trim(); // "coding"
분할 : str.split(구분자)
var names = "홍길동,아무개,하하하,호호호";
names.split(","); // ["홍길동", "아무개", "하하하", "호호호"]
문자열 비교
1 < 3 // true
"a" < "c" // true
"a".codePointAt(0); // 97
String.fromCodePoint(97); // "a"
728x90
반응형
'Language > Javascript' 카테고리의 다른 글
[Javascript] 구조 분해 할당(Destructuring assignment) (0) | 2021.12.22 |
---|---|
[Javascript] 배열(Array), 배열 메소드(Array methods) (0) | 2021.12.19 |
[Javascript] 숫자, 수학 method(Number, Math) (0) | 2021.12.17 |
[Javascript] 심볼(Symbol) (0) | 2021.12.17 |
[Javascript] 계산된 프로퍼티(Computed property), 객체 메소드(Object methods) (0) | 2021.11.16 |