- [ 언어·프레임워크/Java ][Java ] `System.identityHashCode()`와 `hashCode()` 메서드의 차이점2025-06-14 23:17:01System.identityHashCode()와 hashCode() 메서드의 차이점자바에서 객체의 해시 코드를 얻는 두 가지 방법으로 System.identityHashCode()와 hashCode() 메서드가 존재한다. 이 두 메서드는 기능과 목적에서 명확한 차이를 가진다.1. hashCode() 메서드hashCode() 메서드는 Object 클래스에 정의되어 있으며, 모든 자바 객체가 상속받는 메서드이다.목적: 이 메서드의 주된 목적은 컬렉션(예: HashMap, HashSet)에서 객체를 효율적으로 저장하고 검색하는 데 사용되는 해시 코드를 제공하는 것이다.오버라이딩 가능: 개발자는 필요에 따라 이 메서드를 오버라이드하여 객체의 동등성 비교 로직(equals() 메서드와 일관되게)에 맞춰 커스텀 해..
- [ 언어·프레임워크/JavaScript ][JavaScript] JavaScript Array.includes() 와 객체에서 구조적 동일성과 참조 동일성 문제2025-04-17 11:42:11JavaScript Array.includes() 와 객체에서 구조적 동일성과 참조 동일성 문제JavaScript에서 Array.prototype.includes() 메서드를 사용할 때, 객체와 원시 값(숫자, 문자열 등)을 다룰 때 어떻게 동작하는지 이해하는 것이 중요핟다.핵심 차이: 참조 vs. 구조원시 값의 경우, includes()는 배열의 요소 중 검색하는 값과 엄격하게 같은 (===) 요소가 있는지 확인한다.하지만 객체의 경우, includes()는 구조적 동일성이 아닌 참조 동일성을 확인한다. 즉, 배열이 메모리에서 정확히 동일한 객체 인스턴스에 대한 참조를 포함하는지 확인하며, 단순히 동일하게 보이는 객체(즉, 동일한 속성과 값을 가진 객체)를 확인하지 않는다.코드 예제예제를 통해 이를 설..
- [ CS/자료구조와 알고리즘 ][자료구조와 알고리즘] 유데미 강의 "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 ][JavaScript][문제해결] Javascript의 select에서 checked인 모든 요소를 삭제하려고 했는데...2022-05-17 08:29:47Javascript의 select에서 checked인 모든 요소를 삭제하려고 했는데 하나씩 선택 삭제는 잘 작동하는데 둘 이상인 경우 삭제가 아니라 2배로 늘어나는 기적(?)이 일어났다. 처음에는 문자열인 고객사 명만 배열로 관리했는데 인덱스를 찾아 삭제하는 것보다 객체의 키값을 찾아 삭제하는 것이 효과적일 거라는 판단이 들어 배열 내에 객체 형식으로 고객사를 등록했다. 객체의 고유한 키의 값을 사업자 번호로 삼았고 그걸 가지고 checked 된 경우 찾아 삭제하고자 했다. 삭제 방식은 checked 되지 않은 요소(고객사 객체)만 새로운 임시 배열에 push 한 후 기존 고객사 배열에 덮어 버리는 방식을 이용했다. 그랬더니 삭제하려고 했던 요소가 2배로 늘어나버렸다. 정확히는 "checked 된 수 *..- [ 언어·프레임워크/JavaScript ][JavaScript] "Do it! 자바스크립트 입문" - 6장, 7장 | 객체, Array 객체2022-03-14 12:19:24"고경희. (2021). Do it! 자바스크립트 입문. 이지스퍼블리싱", 6장, 7장을 통해 다지게 된 점은 다음과 같다. 6장 객체 1) 자바스크립트 객체 종류: 내장 객체, 문서 객체 모델(DOM), 브라우저 객체 모델, 사용자 정의 객체 2) 자바스크립트 = 프로토타입 기반 언어(prototype-based language). 객체 간의 상속 관계를 프로토타입 체인(prototype chain)이라고 한다. 프로토타입을 사용해 만들어낸 객체를 '인스턴스(Instance) 또는 개별 객체'라고 한다. 3) Math 객체는 new 예약어를 통해 객체의 인스턴스를 생성하지 않는다. 4) 사용자 정의 객체: "리터럴 표기법, 생성자 함수" 사용해 만든다. 5) 생성자 함수는 객체를 만들어 내는 함수로 f..