string 메서드

김정민·2021년 12월 6일
0

indexOf()

str.indexOf(searchValue[, fromIndex])

const str = "abab";

document.writeln(str.indexOf('ab')); // 0
document.writeln(str.indexOf('ba')); // 1
document.writeln(str.indexOf('abc')); // -1
document.writeln(str.indexOf('AB')); // -1

처음 검색된 값을 반환한다.
일치하는 값이 없으면 -1을 반환한다

,fromIndex 에 값을 넣어주면 searchValue를 찾기 시작할 위치

const str = "abab";

document.writeln(str.indexOf('ab')); // 0
document.writeln(str.indexOf('ab', 1)); // 2

이와 비슷한 search
다른점은
1. search 는 정규표현식을 사용할 수 있다
2. search는 두 번째 혹은 다른 시작 위치를 인수로 지정할 수 없다. 반대로 indexOf는 가능하다.

slice()

slice() 메소드는 문자열의 일부를 추출하면서 새로운 문자열을 반환합니다

str.slice(beginIndex[, endIndex])

let s ='abcdefABCDEF'

s.slice(6) //ABCDEF
s.slice(6,9)//ABC

배열자체는 바꾸지 않는다!!

substr()

substr() 메서드는 문자열에서 특정 위치에서 시작하여 특정 문자 수 만큼의 문자들을 반환합니다((몇번째부터 몇개를 가져오겠다))

str.substr(start[, length])

let s ='abcdefABCDEF'

s.substr(6,3)//'ABC'
s.substr(6,4)//ABCD

substring()

substring() 메소드는 string 객체의 시작 인덱스로 부터 종료 인덱스 전 까지 문자열의 부분 문자열을 반환합니다.

str.substring(indexStart[, indexEnd])

slice와 완전 같지만 -인덱스의 차이가 있다

let s ='abcdefABCDEF' 

s.substring(2,-2)//ab
s.slice(2,-2)//cdefABCD

substring 은 -2를 0으로 처리
slice는 -2를 찾아간다

replace()

정말 많이쓰는 친구

replace() 메서드는 어떤 패턴에 일치하는 일부 또는 모든 부분이 교체된 새로운 문자열을 반환합니다. 그 패턴은 문자열이나 정규식(RegExp)이 될 수 있으며, 교체 문자열은 문자열이나 모든 매치에 대해서 호출된 함수일 수 있습니다.

var newStr = str.replace(regexp|substr, newSubstr|function)

let s ='abcdefABCDEF' 

s.replace('ABC','hojun')
'abcdefhojunDEF'

let x="100,000,000"

x.replace(',','')
'100000,000
//이렇게 하면 앞에 제일 먼저 마주한 것만 적용됨

//전부 다 지우고 싶으면 정규표현식
x.replace(/,/g,'')
'100000000'


//replaceAll 도 있긴하다
x.replaceAll(',','')

배열자체는 바꾸지 않는다!!

split()

split() 메서드는 String 객체를 지정한 구분자를 이용하여 여러 개의 문자열로 나눕니다.

str.split([separator[, limit]])

특정 문자를 기준으로 잘라내서 배열로 만듬

let str= '5,4,10,2,5'

let spl = str.split(',');
 //['5', '4', '10', '2', '5']

limit 설정

var myString = 'Hello World. How are you doing?';
var splits = myString.split(' ', 3);

console.log(splits);
//["Hello", "World.", "How"]

배열자체는 바꾸지 않는다!!

그외 메서드 concat() includes() match() toLowerCase() toUpperCase()

문자열 배열로 반환하는법?
1. Array.from()
2. ... 전개구문
3. JSON.parse??

var data = "0,1,2,3";
var arr = JSON.parse("[" + data + "]");
console.log( arr)
console.log(typeof arr[0])
  1. filter
var str = "거꾸로";

console.log(str.split()); //인자 없으면 ["거꾸로"]

console.log(str.split('')); //이렇게 하면 ["거","꾸","로"]

0개의 댓글

관련 채용 정보