Некоторые функции lodash не определены - PullRequest
0 голосов
/ 06 мая 2018

Некоторые функции lodash выдают «не ошибка функции». Например: _.minBy, _.maxBy, _.cloneDeep и т. Д.

Другие функции, такие как _.map, _.clone и т. Д., Работают нормально. Я пробовал с lodash 4 и lodash 3.

Вот мой код:

<script src="https://cdnjs.cloudflare.com/ajax/libs/lodash.js/3.1.0/lodash.js"></script>
<script type="text/javascript">
var drinks = [
  { 'name': 'Coke', 'quantity': 2 },
  { 'name': 'Red Bull', 'quantity': 6 }
];
var currentDrinks = _.map(drinks, 'name');
console.log(currentDrinks);
// → [‘Coke’, ‘Red Bull’]
var a = [{"type":"exam","score":47.67196715489599},{"type":"quiz","score":41.55743490493954},{"type":"homework","score":70.4612811769744},{"type":"homework","score":48.60803337116214}];

const b = _.minBy(a, 'score');
console.log(b);

</script>

Здесь _.map работает, а _.minBy не работает. Какую версию lodash мне следует использовать для поддержки _.minBy и _.deepClone?

1 Ответ

0 голосов
/ 06 мая 2018

Отлично работает с lodash 4:

var drinks = [
  { 'name': 'Coke', 'quantity': 2 },
  { 'name': 'Red Bull', 'quantity': 6 }
];
var currentDrinks = _.map(drinks, 'name');
console.log(currentDrinks); // → [‘Coke’, ‘Red Bull’]
var a = [
  {"type":"exam","score":47.67196715489599},
  {"type":"quiz","score":41.55743490493954},
  {"type":"homework","score":70.4612811769744},
  {"type":"homework","score":48.60803337116214}
];
const b = _.minBy(a, 'score');
console.log(b);
<script src="https://cdnjs.cloudflare.com/ajax/libs/lodash.js/4.17.10/lodash.js"></script>

.minBy и .maxBy были введены в версии 4.0.0. Просто используйте версию выше этой.

Редактировать : В загруженном файле вы не указываете всю библиотеку. Вы просто загружаете ядро. (В вашем вопросе вы указали, однако, правильный файл, но не ту версию.)

Изменение:

<script src="https://cdnjs.cloudflare.com/ajax/libs/lodash.js/4.17.10/lodash.core.min.js"></script>

до:

<script src="https://cdnjs.cloudflare.com/ajax/libs/lodash.js/4.17.10/lodash.min.js"></script>
...