#this is my funnction, I a using any type here, how to replace it with generic?

3 messages · Page 1 of 1 (latest)

naive jackal
#

const buildMasonryData = (data: any) => {
let innerArr = [];
const finalArr = [];
for (let index = 0; index < data.length; index++) {
if (innerArr.length === 1) {
finalArr.push(innerArr);
innerArr = [];
innerArr.push(data[index]);
} else {
innerArr.push(data[index]);
}

if (index === data.length - 1) {
  finalArr.push(innerArr);
}

}
return finalArr;
};

#

here is one attempt but so many errors are coming
const buildMasonryData = <T>(data: T[]): T[][] => {
let innerArr: T[] = [];
const finalArr: T[][] = [];
for (let index = 0; index < data.length; index++) {
if (innerArr.length === 1) {
finalArr.push(innerArr);
innerArr = [];
innerArr.push(data[index]);
} else {
innerArr.push(data[index]);
}

if (index === data.length - 1) {
  finalArr.push(innerArr);
}

}
return finalArr;
};

mellow gobletBOT
#
humbledolt#0

Preview:ts const buildMasonryData = <T>(data: T[]): T ...