“ 지연되는 프로젝트에 인력을 더 투입하면 오히려 더 늦어진다. ”
자바스크립트에는 문자열과 관련된 함수가 다양하게 있습니다.
원시유형과 객체
단순히 값을 가지고 있을 경우에는 원시유형이라고 하고 프로퍼티와 메서드를 가지고 잇을 때는 객체라고 합니다.
예을 들어 lenght을 사용할때 변수에 문자열을 할당한 후 lenght 프로퍼티를 사용하는데 이때 변수에 lenght을 할ㄹ당하지 않아도 사용할 수잇습니다.
프로퍼티(Property)
객체(Object) 내부의 속성(Attribute)으로, 해당 객체의 상태를 나타내는 값(Value)이나 함수(Function)를 말합니다. 객체는 프로퍼티를 가지며, 이를 통해 객체의 상태와 행동을 제어할 수 있습니다.
lenght 포로퍼티
문자열의 길이를 찾을 때 사용하는 프로퍼티입니다.
보통 배열에서도 많이 사용하며 배열의 인덱스의 총값을 받아올때 사용합니다.
기본형 |
문자열.lenght |
let str = "Good morning!";
let greeting = "안녕하세요?"
str. length //14
greeting. Length //16
charAt()
특정위치에의 문자에 접근할때 사용하는 메서드입니다.
별도의 메서드 없이 위치는 인덱스로 표시되며 인덱스를 이용하여 위치를 찾아 특정위치의 문자를 가지고 오는 메서드입니다.
기본형 |
문자열.charAt(위치) |
let str = "Good morning!";
str.charAt (3) // "d"
str[5] //"m"
indexOf()
두개 이상의 단오로 구성된 문자열에서 공백으로 구분되는 여러개의 부분 문자열있을 때 특정부분의 문자열이 어디에 있는 찾아 가져올ㄴ수 잇느 메서드입니다.
기본형 |
indexOf(문자열) indexOf(문자열, 찾기 시작하는 위치) |
문자열을 받아올때 만약 위치를 지정한다면 그 위치에서 부터 찾아서 문자열 위치를 줍니다.
만약 찾는 문자열이 없다면 -1을 반환합니다.
let str1 = "Good morning, everyone. Beautiful morning."
str1.index0f ("morning") // 5
str1. index0f("evening") // -1
str1.indexOf ("morning", 7) // 34
첫번째 morning을 지나서 찾는 것이기 때문에 34를 반환합니다.
startsWith()
시작하는 문자열에서 특정 문자열로 시작하는 확인하여, 그 결과를 불린(true, false)로 반환느 메서드입니다.
대소문자를 구별합니다.
기본형 |
문자열. startsWith(문자 또는 문자열) |
str2 = "Hello, everyone." // true
str2.startsWith("Hello") str2.startsWith("hello") // false
str2.startsWith("He") // true
str2.startswith("Hello, ev") // true
기본형 |
문자열. startsWith(문자 또는 문자열, 위치) |
이번 메서드로 위치 값을 앞에서 부터 받습니다.
endsWith()
문자열에서 특정 문자열로 끝나는지 확인하여, 그 결과를 불린(true, false)로 반환느 메서드입니다.
대소문자를 구별합니다.
기본형 |
문자열. startsWith(문자 또는 문자열) |
str2 = "Hello, everyone."
str2.endswith ("everyone. ")//true
str2.endswith ("Everyone.// false
str2.endswith ("one.")// true
str2.endswith ("lo, everyone") // false
기본형 |
문자열. startsWith(문자열, 길이) |
endsWith()에서는 문자열과 함께 길이를 함께 지정할 수잇습니다. 이때 startsWith()와 endsWith()을 구분해서 기억하셔야 합니다.
includes()
두개 이상의 단오로 구성된 문자열에서 공백으로 구분되는 여러개의 부분 문자열있을 때 특정부분의 문자열이 어디에 있는 찾아 가져올ㄴ수 잇느 메서드입니다. indexOf()와 다른 점은 대소문자를 구별한다는 점입니다.
기본형 |
문자열.includes(문자열) |
str2 = "Hello, everyone.
str2.indexOf ("every") !== -1 // true
str2.includes ("every") // true
trim(), trimEnd(), trimStart()
trim() : 메서드는 문자열의 앞/뒤 공백을 제거하고, 새로운 문자열을 반환합니다.
trimEnd() : 메서드는 문자열의 앞 공백을 제거하고, 새로운 문자열을 반환합니다.
trimStart() : 메서드는 문자열의 뒤 공백을 제거하고, 새로운 문자열을 반환합니다.
기본형 |
문자열.trim() 문자열.trimEnd() 문자열.trimStart() |
let str3 = "ab cd ef"
str3.trim() // 'ab ed ef'
str3. trimStart() // 'ab cd ef'
str3. trimEnd() // 'ab ed ef'
toLowerCase(), toUpperCase()
영문자 문자열의 경우에는 모두 대문자로, 모두 소문자로 바꿀 수잇습니다.
기본형 |
문자열.toLowerCase() 문자열.toUpperCase() |
let str4 = "Good morning."
str4. toUpperCase ()// "GOOD MORNING."
strA. toLowerCase () // "good morning."
substring()
문자열에서 시작 위치에서 종료 위치 값을 추출하여, 새로운 문자열을 반환합니다.
모두 인덱스 값으로 추출하며 인덱스의 값을 사용하여 반환합니다.
기본형 |
문자열.substring(시작 위치) 문자열.substring(시작 위치, 끝 위치) |
stra = "Good morning."
str4.substring(5) // "morning."
slice()
문자열에서 시작 위치에서 종료 위치 값을 추출하여, 새로운 문자열을 반환합니다.
모두 인덱스 값으로 추출하며 인덱스의 값을 사용하여 반환합니다.
기본형 |
문자열.slice(시작 위치) 문자열.slice(시작 위치, 끝 위치) |
str4 = "Good morning."
str4.slice (0, 4) // "Good"
substring()과 split()가 다른 점은
slice()메서드는 취치를 지정할 때 substring()와 달리 음수를 사용 할 수 있습니다.
또한 문자열을 뒤에서 부터 자를 경우에는 slice()메서드가 편리합니다.