Lodash의 배열에는 compact() 메서드가 존재합니다. 이 메서드는 배열에 사용하는 메소드로 값에 존재하는 null, undefined 등의 falsy 값을 깨끗하게 제거해줍니다. 즉 사용하지 않아도 될 값을 제외해주는데요 ~ 객체에서는 어떻게 하면 될까요? 비슷한 메서드가 있을까요? 아래에서 알아봅니다.# 객체에서 undefined, null 등을 가진 프로퍼티 제거 방법Lodash에서도 비슷한 기능을 구현하는 객체 메서드가 존재합니다. 바로 pickBy()입니다. 잠깐! pickBy() 메소드는 특정 값만 프로퍼티로 사용하는 메소드인데요 ~ 이 때 인자로 ...
lodash 메소드 중 하나는 fromPairs()에 대하여 알아봅니다.# lodash 메소드 fromPairs()이름처럼 fromPairs()는 pair의 사전적 의미인 한 쌍과 같이 하나의 쌍을 이루는 값으로부터 객체를 생성하는 메소드입니다. 즉 pair가 되는 두 개의 값 key와 value를 가지고 있어야 하겠죠. 예를들어 key와 value로 이루어진 배열에서 객체를 얻을 때 fromPairs()를 사용하면 쉽게 객체로 변환할 수 있겠죠.다음으로 문법입니다. 사용방법은 매우 간단합니다._.fromPairs(pair)pair // key, v...
Python 앱에서 Pymongo를 사용하여 MongoDB 데이터를 접근할 수 있습니다. 이때 id값을 사용해 찾거나 수정하기 위한 방법은 무엇일까요?! Pymongo를 사용하는 경우 id값으로 찾기바로 pymongo 패키지의 ObjectId 함수를 사용할 수 있습니다. 이를 사용하면 간단하게 id만 알면 접근할 수 있습니다. 예를들어 id값이 아래와 같다면? - id : '5a1dfds52e3d21z3hg1w24y3'만약 myCollection이름의 컬렉션에서 find를 수행하여 위의 id를 찾으려면 아래와 같습니다.from pymongo import Ob...
자바스크립트에서 객체가 가진 키의 개수만 구하는 방법을 알아봅니다.# 자바스크립트 객체의 키의 개수 구하는 방법객체 타입을 선언 후 값이 있는지 없는지 확인하기 위해서 키값의 여부를 확인하는 것도 하나의 방법입니다. 이런 이유로 키 값의 개수를 알기 위해서 사용 가능한 방법이 바로 Object.keys() 입니다.Object.keys(객체)Object 객체의 내장함수인 keys()는 객체가 가진 모든 키들을 하나의 배열로 반환해줍니다. 즉 아래와 같은 객체가 존재하는 경우 하나의 변수에 키만 저장할 수 있습니다.var myObj = { id: 1,...
자바스크립트에서 여러개의 객체를 하나로 병합하는 방법... 즉, 객체(Object)를 합치는 방법(Merging)에 대하여 알아보겠습니다.! 객체를 언제 합쳐야 할까요?여러가지 이유가 있겠지만 가장 많은 이유는 컬렉션 등의 데이터를 가지는 여러개의 객체를 하나로 병합하는 경우가 있습니다. 또 다른 경우는 같은 이름을 가진 객체를 호출하는 경우입니다. 이 경우 덮혀 쓰여질 수 있기 때문에 나중에 호출된 객체만 남을 수도 있겠죠. 이 경우 하나로 병합하면 문제가 해결될 수 있습니다.# 자바스크립트 객체 병합, 합치기먼저 여러개의 객체를 하나로 합치는 ...
자바스크립트의 객체(Object)에 사용하는 entries() 메소드에 대하여 알아봅니다.# 자바스크립트 Object의 entries() 메소드는?자바스크립트의 타입중 객체는 배열처럼 하나가 아닌 여러 개의 값을 키, 밸류 형태로 가지고 있습니다. 만약 객체가 가진 모든 키와 값을 확인하길 원하는 경우라면 entries()를 사용하면 편리합니다. entries()는 객체가 가지고 있는 모든 프로퍼티를 키와 값 쌍으로 배열 형태로 반환하여 주기 때문에 어떤 프로퍼티와 값으로 이루어졌는지 한 눈에 확인할 수 있겠죠.Object.entries() // 모든 프로퍼...
자바스크립트에서 객체의 프로퍼티를 확인하는 방법을 알아봅니다. 어떻게하면 객체의 property를 알수 있을까요? 이때 사용하는 함수가 바로 hasOwnProperty()입니다. 아래는 이 함수를사용하는 방법을 예제로 알아봅니다.# 객체 프로퍼티 여부 확인하기, hasOwnProperty()만약 mySite라는 객체가 존재한다면 name이라는 프로퍼티(Property)이 있는지 확인한 후 있는 경우에만 해당 name 속성의 값을 출력해보려합니다.var mySite = { name: 'webisfree.com'}if (mySite.hasProperty('na...
자바스크립트의 객체 내에서 setTimeout() 구문을 사용할 경우 자기 자신인 객체를 호출하는 방법을 알아봅니다.먼저 아래처럼 객체 하나를 만들고 간단한 setTimeout()을 실행하는 함수가 내부에 있다고 생각해봅니다.var obj = { site: 'webisfree', getSite: function() { alert(this.site); }};위 객체는 사이트 이름과 사이트 이름을 출력하는 프로퍼티, 메소드를 각각 가지고 있습니다. 실행하면 사이트네임 webisfree가 잘 출력됩니다. 여기서 만약 ...
객체의 프로퍼티 값을 if문을 사용하여 비교하는 방법에 대하여 알아보겠습니다.먼저 객체는 프로퍼티와 메소드를 가지고 있습니다. 프로퍼티의 값에 if문을 사용하여 비교하거나 검증할 때 주의할 점이 있는데 그것은 객체가 존재하는지를 미리 확인할 필요가 있다는 점입니다.어떤 상황에서는 빈 객체가 아닌 선언되지 않은 객체가 비교대상일수도 있고 이런 경우 undefined 에러가 나타납니다. 이런 에러를 발생하지 않는 방법이 추가로 필요합니다.# 객체 프로퍼티에 if문을 사용하여 비교하는 예제보기먼저 아래와같은 예제가 있습니다. site라는 객체가 없는 경우 아래 코드를 실행...
자바스크립트에서 객체의 프로퍼티 값을 비교할때 가장 효과적인 방법은 무엇일까요?# 자바스크립트 객체의 프로퍼티 값 비교 방법자바스크립트에서 객체의 프로퍼티 값을 비교할때 주의할 부분이 있습니다. 객체의 존재 여부와 프로퍼티 또는 메소드가 존재하느냐 .. 그리고 타입은 일치하느냐입니다. 다시 말하면 아래를 확인해야합니다. 객체의 존재여부 체크비교 할 프로퍼티 및 메소드 체크타입의 일치 여부이때 객체 및 프로퍼티, 메소드 등이 존재하지 않는 undefined라면 코드의 실행과정에서 에러가 발생할 수 있습니다. 이에 대한 예외처리를 할 수 있으나 에러가 End 유저에게 ...