전체 글 25

[JavaScript] Set 객체

Set 객체는 ES6에서 등장한 데이터 타입으로 배열의 중복되는 값을 가지지 않는 값들의 리스트를 말한다. 그리고 이 때 값은 순서가 존재하지 않는다. Set 객체 선언하기 const set = new Set(); 특정 요소 추가하기: add Set 객체에 주어진 값을 갖는 새로운 요소를 추가한다. //Set.add(value) set.add(1);// Set { 1 } set.add('a');// Set { 'a' } set.add('hi');// Set { 1, 'a', 'hi' } 특정 요소 확인하기: has Set 객체에 주어진 값을 갖는 요소가 있는지 확인한다. (true / false) // Set { 1, 'a', 'hi' } //Set.has(value) set.has(1);// true ..

React, JavaScript 2022.09.26

[JavaScript] forEach()를 사용하여 key-value 생성하기

백준 알고리즘 문제를 풀며 key-value 생성 방법을 메모하기 위해 작성하였습니다. https://www.acmicpc.net/problem/18870 18870번: 좌표 압축 수직선 위에 N개의 좌표 X1, X2, ..., XN이 있다. 이 좌표에 좌표 압축을 적용하려고 한다. Xi를 좌표 압축한 결과 X'i의 값은 Xi > Xj를 만족하는 서로 다른 좌표의 개수와 같아야 한다. X1, X2, ..., XN에 좌 www.acmicpc.net 기존에 알던 방식으로 제출하였을 경우 시간초과 문제가 발생하여 이를 해결하기 위해 인덱스를 key - value 값으로 지정하여 시간초과 문제를 해결하였습니다. const fs = require("fs"); let input = fs.readFileSync("/..

React, JavaScript 2022.09.16

[JavaScript] 배열의 중복 요소 제거하기

백준 알고리즘 문제를 풀며 배열의 중복 값 제거 방법을 메모하기 위해 작성하였습니다. https://www.acmicpc.net/problem/1181 1181번: 단어 정렬 첫째 줄에 단어의 개수 N이 주어진다. (1 ≤ N ≤ 20,000) 둘째 줄부터 N개의 줄에 걸쳐 알파벳 소문자로 이루어진 단어가 한 줄에 하나씩 주어진다. 주어지는 문자열의 길이는 50을 넘지 않는다. www.acmicpc.net 1. filter(), indexOf()를 사용하여 중복을 제거하는 방법 const arr = ['i', 'im', 'it', 'no', 'no', 'but', 'more', 'more']; console.log(arr); // ['i', 'im', 'it', 'no', 'no', 'but', 'mor..

React, JavaScript 2022.09.13

[JavaScript] 숫자 배열의 최소,최대 값 구하기

알고리즘 문제를 풀며 배열의 최소,최대 값을 구할 시 기존의 min, max를 사용하면 NaN 값이 생기게 되어 해결법을 찾아 정리해보고자 한다. 기존 최대 또는 최소 함수를 사용하는 예시. Math.max(1, 2, 3) // 3 Math.min(1, 2, 3) // 1 하지만 만약 숫자의 배열을 가지고 있고 그 안에서 최소값과 최대값을 찾고자 한다면 다음과 같은 현상이 발생한다. Math.min 또는 Math.max 메서드에 배열을 넘기면 NaN이 나온다. const nums = [1, 2, 3] Math.min(nums) // NaN Math.max(nums) // NaN 그 이유는 Math.min 또는 Math.max 함수는 배열이 아니라 고유한 변수를 기대하기 때문이다. 이를 해결 하기 위해 E..

React, JavaScript 2022.09.06

[JavaScript] join()

백준 문제를 공부하며 문자열을 이어주는 방법을 찾아보던 중 join()이라는 함수를 알게되어 이를 정리하고자 한다. arr.join([구분자]); 구분자를 지정하지 않으면 기본적으로 쉼표(,)를 통해 배열을 연결해준다. 아래의 예시를 참고하여 결과값을 알 수 있다. const arr = ['사과', '바나나', '딸기']; arr.join(); cosole.log(arr); // 사과,바나나,딸기 arr.join(''); cosole.log(arr); // 사과바나나딸기 arr.join('/'); cosole.log(arr); // 사과/바나나/딸기

React, JavaScript 2022.08.23