본문 바로가기

분류 전체보기337

filter 함수 사용법 자바스크립트내에는 요소들을 돌며 체크해서 조건에 맞는 것만 배열로 리턴시켜주는 filter라는 함수가 있다 요소를 돌아야 하므로 배열이나 문자열같은 반복자가 돌 수 있는 곳만 사용 가능하다 기본 형태는 다음과 같다 배열.filter(요소의 조건을 체크할 함수) // 배열 외에 문자열 등도 가능 반드시 3개의 인자를 다 쓸 필요는 없으며 필요하면 1, 2, 3 개의 인자를 자유롭게 사용하면 된다 예를 들어 arr = '1, 2, 3, 4, 5'; 라고 할때 이를 요소별로 나누고(split), 나눈 요소들이 조건에 맞는 것만 취하려고 할때(filter) 를 사용하면 된다 위의 arr 중에 3이상인 요소만 따로 배열 arr2로 받으려고 하면 // 앞 뒤 공백이 없으니 trim 은 생략하겠다 arr2 = arr.. 2022. 8. 12.
빈 문자열을 split 하면 빈 문자열이 담긴 배열을 리턴한다 주어진 문자열이 빈 문자열이고 그 빈 문자열을 split 하면 빈 문자열이 배열에 담겨 리턴된다 배열이 빈게 아니라 빈 문자열이 그대로 배열에 담기게 되니 주의하자 let arr = []; input = ''; arr = input.trim().split(' '); // 공백 말고도 split(/\s+/) 과 같이 정규 표현식으로 해도 마찬가지 결과다 console.log(arr) // [""] 빈 문자열이 하나의 요소로 들어가므로 arr.length === 1 이 되고 arr[0] = '' 이 된다 진짜 자바스크립트 넌 왜 이렇게 만들었대; 아오... 2022. 8. 12.
split 으로 나눌때 공백이 두 개 이상일 경우 문자열의 앞 뒤로 공백이 여러개라면 trim() 을 쓰면 앞 뒤로 공백이 1개던 5개던 모두 사라진다 하지만 str = ' 사자 곰 호랑이 코알라 뱀 돼지 ' 라는 문자열을 공백을 제거하여 나누어서 배열에 담으려 할때 단순히 앞 뒤로 공백을 제거하자 하고 다음처럼 arr = str.trim().split(' '); // arr = [사자,곰,,호랑이,,,코알라,,,,,뱀,,,,,,,,,,,,,,,,,,돼지] error야 꺄악! 나누면 에러가 생긴다. 각 요소들 사이의 공백도 구분자로 인식하게 되어 공백을 요소로 인식해서 생기는 문제이다 이럴땐 요소간의 공백이 여러개여도 무시할 수 있도록 정규표현식을 사용하면 된다 아직 정규표현식을 배우진 않았지만 자주 쓰일것 같으니 일단 외워서 쓰며 익숙해지자 사용법은 .. 2022. 8. 12.
[백준 4179/c++] 불! 이전의 BFS 문제와는 다르게 입력이 숫자가 아닌 문자열이고 불의 전파된 곳으로는 가지 못하는데 불도 지훈이와 같은 속도로 전파될 경우, 범위 밖으로 탈출해야 한다는 조건이 붙은 문제이다 문자열이므로 보드를 문자열을 담을 1차원 배열로 만들고, 각 좌표에서의 불의 거리를 우선 체크하고, 각 좌표에서의 지훈이의 거리가 더 작아야만 이동가능하도록 조건을 설정, 이동 중 가장 빠르게 범위 밖으로 나갈 수 있을때의 거리를 구하면 되는 문제이다 https://www.acmicpc.net/problem/4179 4179번: 불! 입력의 첫째 줄에는 공백으로 구분된 두 정수 R과 C가 주어진다. 단, 1 ≤ R, C ≤ 1000 이다. R은 미로 행의 개수, C는 열의 개수이다. 다음 입력으로 R줄동안 각각의 미로 .. 2022. 8. 11.