생각나는 대로 써보는, 이제까지 연습해봤던 array와 string 메소드들!
Array.method :
push
, unshift
, pop
,shift
slice
,splice
,split
map
,forEach
,includes
String.method :
slice
,concat
,trim
indexOf
,search
,replace
,match
startsWith
,endsWith
,includes
includes
const a = ['n','a','d','b']
const b = 'nadbn'
console.log(a.includes('n'))
//true
console.log(b.includes('n'))
//true
-> array와 string 모두 받아 boolean으로 return 하는 것을 볼 수 있다
console.log(a.match('n'))
//a.math is not a function
console.log(b.match('n'))
//'n'
-> string만 return 하는 것을 볼 수 있다.
공통점 :
1. 찾은 값의 첫 번째 인자를 반환해준다
2. 찾는 값이 없으면 -1을 반환해준다
let str='Book is booked for delivery'
str.indexOf('b') // returns position 8
str.search('b') // returns position 8
차이점 :
special in indexOf()
i) 두 번째 인자를 설정함으로써 찾는 위치를 지정해줄 수 있다.
str.indexOf('k') // 3
str.indexOf('k',4) // 11 (it start search from 4th position)
special in search()
search value can be regular expression
special in search()
ii) regular expression에 쓸 수 있다.
str.search('book') // 8
str.search(/book/i) // 0 ( /i =case-insensitive (Book == book)
getFind 함수를 작성하세요.
문자와 문자열이 주어졌을때, getFind 함수는 주어진 문자열에서 주어진 문자가 나타나는 첫번째 위치를 반환합니다.
Notes:
문자열의 첫번째 문자는 인덱스 값 0 을 가집니다.
만약 문자열에 해당 문자가 여러번 나타나면, 첫번째로 나타나는 위치를 반환해야 합니다.
만약 문자가 문자열에 존재하지 않는다면, -1 을 반환해야 합니다.
중요!!
indexOf 함수를 사용하지 마세요.
search 함수는 어차피 첫번째로 나타나는 위치만을 반환해주므로, 시작 위치를 설정해줄 필요가 없는 문제에 따라 아주 쉽게 search 함수로 대신해서 쓸 수 있다!
function getFind(filter, sentence) {
const result = sentence.search(filter)
return result;
}