반응형

2017/05 3

javascript array의 원소 삭제하기

javascript Array의 특정 원소를 지우는 법을 정리한다. python에서는 다음과 같은 코드로 같은 작업을 할 것이다. a = [1, 2, 3, 4] a.remove(3) 다음은 javascript 코드이다. 지우고 싶은 원소의 인덱스를 찾아서 splice 함수를 통해서 지운다. let a = [1, 2, 3, 4] const idx = a.indexOf(3) if (idx > -1) a.splice(idx, 1) 단순 array가 아닌 object를 담는 array에서 특정 field 값을 가지는 object를 지우고 싶다면 다음과 같은 방식으로 할 수 있다. functional programming style의 find 함수를 이용해서 원하는 object를 찾고, 그 이후는 같은 논리로 코..

Elasticsearch 초보의 mapping 관리

Elasticsearch는 분산 시스템을 기본적으로 지원하는 전문 검색(full-text search) 오픈 소스 프로젝트로, "검색"을 쉽게 접근할 수 있게 해주는 강력한 도구이다. 나중에 전반적으로 설명할 기회가 있다면 더 이야기하기로 하고, 이 글에서는 간단히 Elasticsearch의 index 및 type의 mapping 관리에 대해 내가 경험한 것들을 정리한다. mapping이란? Elasticsearch를 처음 접하고 공식 getting started 가이드를 따라 하나씩 해보는 사람이라면, 이 mapping이라는 개념을 쉽게 지나치게 된다. 왜냐하면 getting started 가이드에서는 샘플 데이터를 바로 index해버리고 검색해서 "짠 하고 검색이 된다"로 끝나기 때문이다. 다행히도 ..

etc 2017.05.07

NVM, Node Version Manager 소개

ubuntu에는 기본적으로 JDK, Python, Node.js 등의 프로그래밍 언어 및 도구들이 함께 설치되어 있다. Node.js가 설치되어있는 것을 확인해보려면 바로 쉘에서 아래와 같이 버전을 체크해보면 된다. ~$ node --version v4.8.3 ~$ npm --version 2.15.11 시스템에 기본으로 v4.8.3 버전의 Node.js가 설치되어있는 것을 확인할 수 있다. 하지만 Node.js 공식 사이트가 알려주는 최신 버전은 아래 스크린샷을 통해서 보듯이 v7.10.0, v6.10.3(LTS)이다. 최신 버전과 시스템 버전은 큰 괴리가 있음을 깨닫는다. 그럼 여기서 고민이 생긴다. 그냥 시스템에 깔려있는 Node.js를 쓸 것인가,아니면 최신 LTS 버전 (혹은 원하는 버전)을 설..