Tips, Tricks and Best Practices

참고자료

  • https://kpiteng.medium.com/javascript-tips-tricks-and-best-practices-a94805c14d02

Group By Array Of Objects - reduce()

var arrCity = [
  {'region': 'Europe', 'name': 'Paris'},
  {'region': 'Europe', 'name': 'Amsterdam'},
  {'region': 'Europe', 'name': 'Vienna'},
  {'region': 'UnitedStates', 'name': 'New York'},
  {'region': 'UnitedStates', 'name': 'San Francisco'},
  {'region': 'Europe', 'name': 'Barcelona'},
 ]
 
var groupBy = function(xs, key) {
return xs.reduce(function(rv, x) {
  (rv[x[key]] = rv[x[key]] || []).push(x);
  return rv;
  }, {});
};

var resultByRegion = groupBy(arrCity, 'region');

console.log(resultByRegion);
// 결과
{
  Europe: [
    {name: "Paris", region: "Europe"}, 
    {name: "Amsterdam",region: "Europe"}, 
    {name: "Vienna",region: "Europe"}, 
    {name: "Barcelona",region: "Europe"}
  ],
  UnitedStates: [
    {name: "New York",region: "UnitedStates"}, 
    {name: "San Francisco",region: "UnitedStates"}
  ]
}

Next — next()

  • 제너레이터란?arrow-up-right

    • 일반 함수는 하나의 값(혹은 0개의 값)만을 반환합니다. 하지만 제너레이터(generator)를 사용하면 여러 개의 값을 필요에 따라 하나씩 반환(yield)할 수 있습니다

Map — map()

배열 값들 일괄 Cast

배열안 특정값 Index 찾기

If/Else | Switch 사용 피하기

ALIAS_NAME 사용

숫자 _

배열의 unique 값들 가져오기 (중복제거)

Promise Any

먼저 해결되는거 출력하는듯

??=, &&=, ||= (논리 할당 연사자)

Last updated