JS 알고리즘용 기본 함수 정리

낭만개발자·2022년 2월 26일
0

출처 : https://medium.com/@changmoomoon/javascript-%EB%B0%B0%EC%97%B4-%EB%A9%94%EC%86%8C%EB%93%9C-%EC%A0%95%EB%A6%AC-%EC%83%81%ED%99%A9%EB%B3%84-%EC%9B%90%EB%B3%B8%EC%88%98%EC%A0%95-%EC%82%AC%EB%B3%B8%EB%B0%98%ED%99%98-%EC%97%AC%EB%B6%80-7ac1285fa7ef

배열


하고 싶은 일사용할 메서드원본수정,사본 반환 여부
배열 element 조작
*스택push(바뀐 길이 반환),pop원본 수정
*큐unshift(바뀐 길이 반환),shift원본 수정
여러 요소를 배열 마지막에 추가concat사본 반환
*배열의 일부slice사본 반환
임의의 위치에 요소 추가,제거splice원본 수정
배열 안에서 요소 교체copyWithin원본 수정
배열을 채울 때fill원본 수정
*배열을 반대로 정렬reverse원본 수정
*배열을 정렬sort(비교함수 추가가능)원본 수정
배열 검색
*요소의 인덱스indexOf(단순한값),findIndex(복잡한값)
인덱스를 뒤에서 찾을 때lastIndexOf(단순한 값)
*요소 자체find
조건을 만족하는 요소가 들어있는지 확인some
모든 요소가 조건을 만족하는지 확인every
배열 변형
*배열의 모든 요소를 변경할 때map사본 반환
조건에 맞는 요소만 남길 때filter사본 반환
배열 전체를 다른 데이터 타입으로 변형할 때reduce사본 반환
*요소를 문자열로 바꿔서 하나로 합칠 때join사본 반환

array.indexOf()

해당 요소의 인덱스를 return한다. 없으면 -1을 return
파라미터 : .indexOf(찾을 요소, optional: 어느 인덱스부터 찾을지)

const subject = ['math', 'social', 'korean', 'english', 'physic'];

console.log(subject.indexOf('social'));
// expected output: 1

// 검색을 인덱스 2번째 부터 시작한다.
console.log(subject.indexOf('physic', 2));
// expected output: 4

console.log(beasts.indexOf('japanese'));
// expected output: -1

내장함수

string

string.split()

문자열을 배열로 쪼개준다. 기본 한개씩으로 쪼갤땐 파라미터에 '', 다르게 쪼개려면 토크나이저를 파라미터로 넣어준다.

const str = 'abcd';
str.split(''); // ["a","b","c","d"]

const str1 = 'ab cd';
str1.split(' ') //[ab,cd]

const str2 = '2/28'
const test = str2.split('/'); //[2, 28];

test.join('/'); // "2/28" 

string.slice()

문자열의 일부를 추출, 새로운 문자열을 반환한다.
slice(시작인덱스, 끝 인덱스(->해당인덱스의 숫자는 포함하지 않는다))

const str = 'abcd';
let value = str.slice(0,1); // a

let val = str.slice(-1); // d
profile
낭만닥터와 슬의를 보고 저런 개발자가 되어야 겠다고 꿈꿔봅니다.

0개의 댓글