String 전역 개체는 문자열(문자의 나열)의 생성자이다.

valueOf 또는 toString 메서드로 문자열 원시값 반환,
다른 타입들도 감쌀 수 있음 - 문자열로 변환한 값을 가진 String 객체 반환
new 없이 사용하면 생성자로서가 아닌 String 함수는 주어진 인자를 문자열로 변환하여 반환

유사배열객체

length 프로퍼티: 글자 수 반환
[] 안에 인덱스 숫자를 넣어 ~번째 글자 읽기(만) 가능
for ... of문 사용 가능 이후 배울 이터러블이기 때문
String은 원시값이기에 []접근 또는 인스턴스 메서드로 특정 글자만 수정하는 것은 불가능한 이유는 수정하려면 변수 값 자체를 다른 문자열로 대체해야하기 때문.
속성 length

라틴어 문자를 모두 대문자/소문자로 변경하여 반환, 반환 개념이기 때문에 기존의 문자열은 바꾸지 않는다.
인자로 주어진 인덱스의 문자 반환

at : 신기능, 배열에서도 사용, 음수로 뒤에서부터 접근 가능(-1 부터)
indexOf, lastIndexOf
인자로 주어진 문자열이 앞, 또는 뒤에서 처음 나타나는 인덱스 반환
포함되지 않을 시 -1 반환
includes, indexOf, startsWith, endsWith
인자로 주어진 문자열 포함( 아무곳에 / 맨 앞에 / 맨 끝에 ) 여부 불리언으로 반환



인자로 받은 정규표현식과 일치하는 첫 부분의 인덱스 반환
없을시 -1 반환
정규표현식은 문자열의 방식을 특정 패턴으로 나타낸다. 예시로 보면 0~9까지에서 숫자는 4번째에 있고 아래 문장은 숫자가 없기 때문에 -1 반환
substring
자로 전달받은 인덱스(들)을 기준으로 자른 문자열 반환
인자를 하나만 넣으면 해당 인덱스부터 끝까지
음수나 범위 외 숫자는 범위 내 최소/최대 숫자로
slice
substring과 같으나 음수로 뒤에서부터 자를 수 있음

인수로 주어진 문자열이나 정규표현식으로 분리하여 배열을 반환

두 번째 인자로 배열의 최대 길이 지정 가능

앞뒤의 공백 제거하여 반환

중간의 공백은 제거하지 않음
repeat
인자로 주어진 정수만큼 문자열을 반복하여 반환
replace, replaceAll
첫 번째 인자로 받은 문자열 또는 정규식을 두 번째 인자로 치환한 결과를 반환

replace의 첫 인자가 문자열이면 일치하는 첫 부분만 치환
모두 치환하려면 정규식 /.../g 사용
replaceAll은 문자열도 자동으로 /.../g처럼 인식
값을 반환하는 인스턴스 메서드를 연속으로 사용

함수형 프로그래밍에서 많이 사용한다.