Q: TypeScript un Array como tipo de un objeto Estoy intentando crear un objeto que contenga dos tipos de array y si bien el código compila correctamente, en la consola del navegador me dice que la variable del tipo array no está definida cuando intento hacer un push() dentro del bucle for (ERROR TypeError: "chartData.data is undefined").¿por qué?
Gracias!
ngOnInit(): void {
type chartDataStruct = {
  data:number[],
  backgroundColor:string[],
  label:string
}

let chartData = {} as chartDataStruct;


for (let index = 0; index<24; index++)
{
  chartData.data.push(23);
  chartData.backgroundColor.push("red");
}
chartData.label = "Descarga";

console.log(chartData);

}

A: No estoy seguro por qué no funcionó la declaración anterior, pero la cambié por una definición directa del objeto de la siguiente forma:
let chartData = {
  data:[],
  backgroundColor:[],
  label:""
};

Funcionó correctamente.

A: Para que funcione puedes hacer esto:
export interface chartDataStruct = {
  //Esto no incializa las variables. Por eso te da undefined los dos arreglos.
  data:number[],
  backgroundColor:string[],
  label:string
}

Y despues crear tu variable:
let chartData= {} as chartDataStruct 

for (let index = 0; index<24; index++)
{
  //Aqui debes inicializar los arreglos por que estan vacios
  if( !chartData.data ) chartData.data = []
  if( !chartData.backgroundColor) chartData.backgroundColor = []
  chartData.data.push(23);
  chartData.backgroundColor.push("red");
}
chartData.label = "Descarga";

