What if I use a first-class function that is stored in a variable which is an unknown
type. Trying to do so getting the following compiler error.
error TS2571: Object is of type 'unknown'.
let somethingany : unknown;
let somethingunknown : unknown;
const loadUnkown: unknown = (params: unknown) : unknown=>{ <--- exactly her is the mistake
if(typeof params == 'string'){
return params.trim();
}
}
somethingany = loadUnkown('werwq'); <----//eror here
console.log(somethingany.trim());
somethingunknown = loadUnkown('werwer'); <----//eror here
if(typeof somethingunknown == 'string'){
console.log(somethingunknown.trim());
}
Though any
is working precisely.
let somethingany : any;
let somethingunknown : any;
const loadString: any = (params: any): any =>{
return params;
}
somethingany = loadString('asdasdsad');
console.log(somethingany.trim());
somethingunknown = loadString('asdasdsad');
if(typeof somethingunknown == 'string'){
console.log(somethingunknown.trim());
}
Need to know why const loadUnkown: unknown = ()=>{}
is a problem