728x90
반응형
- [JavaScript] filter(), some() 배열 메서드를 이용해 두 배열 간 일치하지 않는 객체 요소 구하기2024-02-21 09:25:591. 두 배열에서 일치하지 않는 객체 요소 구하기 const arr1 = [{ id: 1, name: "a" }, { id: 2, name: "b" }]; const arr2 = [{ id: 1, name: "a" }, { id: 2, name: "b" }, { id: 3, name: "c" }]; 위와 같이 객체를 요소로 가진 두 개의 배열이 있다. 이 두 배열을 비교해 일치하지 않는 객체 요소인 { id: 3, name: "c" }를 구하고자 한다. 2. filter(), some() 배열 요소 활용한 문제 해결 filter() 배열 메서드는 매개 변수로 true/false를 반환하는 콜백 함수를 가진다. some() 배열 메서드는 ||연산자와 비슷해서 요소 중 하나라도 true이면 true를 반환한..
- [자료구조와 알고리즘] 유데미 강의 "JavaScript 알고리즘 & 자료구조 마스터클래스" 정리(섹션 4: 문제 해결 접근법)2024-01-31 22:14:49섹션 4: 문제 해결 접근법 📌 알고리즘 특정 작업을 달성하기 위한 과정이나 일련의 단계 📌 문제 해결법 1단계 문제의 이해 작업을 수행하면서 어떤 해결책을 마련할지, 애플리케이션이 어떻게 구동되도록 할지, 각 상황에서 어떤 식으로 작동되도록 할지에 대해 확실히 이해한다. 면접관에게 질문을 던져서 문제를 명확히 함으로써 확실히 이해할 수도 있다. 문제 이해는 구체적인 예시를 살펴보는 것과도 관련된다. 2단계 구체적 예시 이 두 가지 단계(문제의 이해, 구체적 예시)는 문제를 이해하고, 입력값과 출력값을 이해하고 경계 조건을 이해하는 것에 관한 것이다. 에러를 어떻게 처리할지, 그리고 사용자가 잘못된 값을 입력하면 어떻게 되는지와 같은 질문들은 처음부터 모든 것이 어떻게 작동해야 하는지를 이해하는 것과 관..
- [자료구조와 알고리즘] 유데미 강의 "JavaScript 알고리즘 & 자료구조 마스터클래스" 정리(섹션 3: 배열과 오브젝트의 성능 평가)2024-01-31 10:28:51섹션 3: 배열과 오브젝트의 성능 평가 📌 객체의 빅오 1. 객체 키, 값의 삽입, 삭제, 접근의 경우 Insertion, Removal, Access → O(1) 2. 객체의 키로 접근하지 않고 값으로 탐색하는 경우 Searching → O(n) 3. 객체 메서드의 빅오 O(n) Object.keys Object.values Object.entries O(1) Object.hasOwnProperty let instructor = { firstName: "김일남", isInstructor: true, favoriteNumbers: [1,2,3,4] } instructor.hasOwnProperty("firstName"); // true 📌 배열의 빅오 1. 배열 앞이나 중간 인덱스에 요소 삽입, 삭제 배..
- [JavaScript] split() 문자열 메서드 이용해 특정 문자열의 개수 구하기2023-12-10 00:08:031. Python의 count() 문자열 메서드 문자열에서 특정 문자열의 개수를 구하고자 한다. Python에는 count() 문자열이 존재하기 때문에 아래 코드와 같이 쉽게 구할 수 있다. # 파이썬 코드 s = "javascript" a_count = s.count('a') # count() 문자열 메서드 이용하여 특정 문자열 개수 구하기 print(a_count) # 2 2. javaScript의 split() 문자열 메서드 응용 JavaScript에는 Python과 같은 메서드가 존재하지 않지만 split() 문자열 메서드를 응용하면 같은 결과를 얻을 수 있다. // 자바스크립트 코드 const s = "javascript"; const aCount = s.split("a").length - 1;..
- [JavaScript] 클로저(Closure) 정리!2023-09-26 00:38:061. 클로저(Closure) 란? 클로저는 함수와 함수가 선언된 렉시컬 스코프(Lexical Scope) 사이의 특별한 관계를 나타내는 개념이다. 함수 내부에서 선언된 함수가 외부 함수의 변수에 접근할 수 있고, 그러한 함수를 클로저라고 한다. 클로저는 외부 함수의 변수에 대한 참조를 "닫아"(Capture)서 나중에 사용할 수 있도록 저장한다. 이로 인해 외부 함수가 종료된 이후에도 해당 변수에 접근할 수 있다. 2. 클로저와 관련한 몇 가지 개념 1) 렉시컬 스코프(Lexical Scope): JavaScript는 함수를 정의할 때 함수 내부에서 외부 스코프에 접근할 수 있도록 스코프를 정의한다. 이 스코프는 함수를 선언할 때 결정되며, 함수가 어떤 변수에 접근할 수 있는지 결정한다. 이러한 스코프 ..
- [JavaScript] 날짜 데이터를 yyyy-MM-dd 형식으로 만들기2023-05-25 15:54:32날짜 정보를 문자열로 변경하되 "yyyy-MM-dd"로 변경하고 싶었다. 파이썬에서 strftime이라는 메소드를 이용하면 간단했던 것이다. 참고로 파이썬 코드는 아래와 같다. import datetime now = datetime.datetime.now() formattedDate = now.strftime("%Y-%m-%d") # 2023-05-25 print(formattedDate) 자바스크립트는 toLocaleDateString 메소드와 정규식을 이용해 구현할 수 있었다. 작성한 코드는 아래와 같다. date // 날짜 정보를 담고 있는 변수 date ?.toLocaleDateString('ko-KR', { year: 'numeric', month: '2-digit', day: '2-digit'..
- [JavaScript] python range()와 유사한 JavaScript 코드 작성2023-05-20 22:57:431. lodash 라이브러리 python에 있는 range() 함수는 매개변수로 시작하는 정수 값과 끝나는 정수 값의 -1에 해당하는 이터러블한 정수 값을 생성해 준다. Javascript에는 유사한 문법이 없을까 고민한 적이 있다. node.js의 lodash 모듈을 이용하면 유사한 기능이 가능했다. lodash.range() 를 사용하기 위해서는 아래와 같이 모듈을 설치해야 한다. npm i lodash 아래 코드는 lodash.range()를 간단하게 사용해 본 것이다. const lodash = require("lodash"); let arr = lodash.range(0, 10); console.log(arr); // [0, 1, 2, 3, 4, 5, 6, 7, 8, 9] 2. 배열의 from ..
- [JavaScript] 0이 24개 있는 배열 생성2023-05-18 09:07:07원하는 요소가 원하는 개수만큼 있는 배열을 만드는 코드이다. 아래 예제는 0이 24개 있는 배열이다. const hourArr = Array.from({ length: 24 }, _ => 0);
728x90
반응형