[javascript] Lodash _.pluck는 어떻게 되었습니까?

한때 Lodash를 사용했습니다 _.pluck… 나는 뽑기를 좋아했습니다 …

Lodash가 더 이상 pluck(Lodash 4.x부터) 지원하지 않음을 깨닫고 대신 사용해야 할 것을 기억하기 위해 고심하고 있습니다 …

나는 문서에 가서 cmd-f를 누르고 ‘pluck’을 입력했지만 내 가난한 버려진 친구에게는 적절한 언급조차하지 않았다.

누군가 내가 대신 사용해야하는 것을 상기시켜 줄 수 있습니까?



답변

아하! Lodash 변경 내역 모든 것을 말해 …

” Iteratee 속기의 _.pluck찬성으로 제거됨 _.map

var objects = [{ 'a': 1 }, { 'a': 2 }];

// in 3.10.1
_.pluck(objects, 'a'); // → [1, 2]
_.map(objects, 'a'); // → [1, 2]

// in 4.0.0
_.map(objects, 'a'); // → [1, 2]


답변

ES6이 시작된 이후 _.map나 그 _.pluck이후 의 필요는 없습니다 .

ES6 JavaScript를 사용하는 대안은 다음과 같습니다.

clips.map(clip => clip.id)


답변

_.map대신에 사용하십시오 _.pluck. 최신 버전 _.pluck에서이 제거되었습니다.


답변

정말로 _.pluck지원을 원한다면 mixin을 사용할 수 있습니다.

const _ = require("lodash")

_.mixin({
    pluck: _.map
})

때문에 map지금은 대신 함수의 인수로 문자열 (이하 “반복자”)을 지원합니다.


답변

또는 이와 같은 순수한 ES6 nonlodash 방법을 사용해보십시오

const reducer = (array, object) => {
  array.push(object.a)
  return array
}

var objects = [{ 'a': 1 }, { 'a': 2 }];
objects.reduce(reducer, [])


답변