Примечание. Вся заслуга в коде этой статьи, использованном в этой статье, принадлежит г-ну Раджешу Пиллаи. /strong>https://www.youtube.com/channel/UCvhIKdT611F_ebrmIbQ9VDQ
Недавно один из моих сэров разместил видео на YouTube, и это заставило меня почувствовать, что знание этого материала — это другое, а использование его разными возможными способами — это другой способ.
он разместил видео о функции уменьшения и о том, как ее использовать
Функция уменьшения
функция уменьшения - это, по сути, функция в списке или массиве с двумя периметрами... ну, я думаю, что изображение может объяснить лучше
я надеюсь, что понятно, что такое функция сокращения
так что давайте посмотрим на это с другого ракурса сейчас
предположим, что у вас есть массив
let data = [
{name: "Raphel", gender: "male"},
{name: "Tom", gender: "male"},
{name: "Jerry", gender: "male"},
{name: "Dorry", gender: "female"},
{name: "Suzie", gender: "female"},
{name: "Dianna", gender: "female"},
{name: "Prem", gender: "male"},
];
и вы хотите распространять эти данные как
genderwise : {
"male":[
{"name":"Raphel","gender":"male"},
{"name":"Tom","gender":"male"},
{"name":"Jerry","gender":"male"},
{"name":"Prem","gender":"male"}
],
"female":[
{"name":"Dorry","gender":"female"},
{"name":"Suzie","gender":"female"},
{"name":"Dianna","gender":"female"}
]}
так что, по крайней мере, я бы выбрал более подходящий ответ для цикла, как
const genderwise = {male: [], female: []};
data.forEach(item => genderwise[item.gender].push(item));
так что мы хотели бы спросить, почему сокращение видеть, что мы не обсуждаем правильный или неправильный путь, суть в том, что мы обсуждаем способы использования функции сокращения, да, мы также можем достичь результатов с помощью функции сокращения, и это было по крайней мере новым для меня
let data = [
{name: "Raphel", gender: "male"},
{name: "Tom", gender: "male"},
{name: "Jerry", gender: "male"},
{name: "Dorry", gender: "female"},
{name: "Suzie", gender: "female"},
{name: "Dianna", gender: "female"},
{name: "Prem", gender: "male"},
];
let genderwise = data.reduce((acc, currentItem, index, fullArray) => {
acc[currentItem.gender].push(currentItem);
return acc;
}, {male: [], female: []});
согласно Раджешу, сэр
использование сокращения таким образом является более функциональным подходом к той же проблеме. Таким образом, вместо того, чтобы разделять создание константы и цикл, они оба объединяются в одну функцию редукции. Но чистый выход такой же. Но знание сокращения упростит множество случаев использования обработки данных, когда данные должны быть переданы, составлены и сопоставлены, о чем я вскоре поделюсь, но все можно сделать и без сокращения.
Вы можете найти полное видео на
Спасибо, сэр, за эти советы, надеюсь увидеть больше от вас